dennismonsewicz Posted September 29, 2008 Share Posted September 29, 2008 What is the difference here: $var1 = "SELECT * FROM $tbl_name WHERE id = {$_POST['id']}"; VS $var1 = "SELECT * FROM $tbl_name WHERE id = '" . $_POST['id'] . "'"; Do the { brackets acheive the same as the period? Link to comment https://forums.phpfreaks.com/topic/126329-clarification/ Share on other sites More sharing options...
Cosizzle Posted September 29, 2008 Share Posted September 29, 2008 As far as I know ya, its a personal preference. What I tend to do is asign the $_POST to a variable $id = $_POST['id']; $var1 = "SELECT * FROM $tbl_name WHERE id = '$id'"; Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653237 Share on other sites More sharing options...
Barand Posted September 29, 2008 Share Posted September 29, 2008 http://www.php.net/manual/en/language.types.string.php Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653238 Share on other sites More sharing options...
discomatt Posted September 29, 2008 Share Posted September 29, 2008 By default you can use variables in double brackets. <pre><?php $test = 'World'; echo "Hello $test \n"; # Won't work! echo 'Hello $test \n'; echo "\n"; $arr = array( 'str' => 'World' ); # echo "Hello $arr['world']" is a little complex with the mixed quotes... as # echo "Hello $arr["world"]" is acceptable as well... to avoid making exceptions, # you use echo "Hello {$arr["str"]} \n"; $arr2 = array( 'World' ); # You don't have to with numeric keys echo "Hello $arr2[0] \n"; ?></pre> Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653241 Share on other sites More sharing options...
sKunKbad Posted September 29, 2008 Share Posted September 29, 2008 There is another difference. The first example does not produce a query string where single quotes enclose the $_POST['id'] Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653243 Share on other sites More sharing options...
PFMaBiSmAd Posted September 29, 2008 Share Posted September 29, 2008 The first syntax results in fewer syntax errors (at least in posts seen in these forums) because there are less different elements involved. The first syntax places the variable inside of the double-quoted string and forces php to recognize where the variable starts and ends and it allows the single-quotes around the index string name to be used as is. I don't recall any people that use this simpler looking syntax needing help with syntax errors. The second syntax places the variable outside of the double-quoted string by closing the double-quote, concatenate the variable with it, then concatenates another double-quoted string after the variable. For a single variable it is usually not a problem, but for multiple variables, this syntax is hard to read and apparently hard to type based on the number of people posting in forums that have syntax errors and cannot see what is wrong. Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653245 Share on other sites More sharing options...
dennismonsewicz Posted September 29, 2008 Author Share Posted September 29, 2008 Thanks everyone... I have just seen it used here lately when I am editing smarty templates (which I hate) and I was just curious Link to comment https://forums.phpfreaks.com/topic/126329-clarification/#findComment-653295 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.