这两者之间的区别......?

时间:2011-06-24 11:20:39

标签: php mysql

我第一次搜索如何使用PHP连接到数据库时我偶然发现了这个例子:

mysql_connect("$host", "$username", "$password");

但是这和它之间的区别是什么?

mysql_connect($host, $username, $password);

7 个答案:

答案 0 :(得分:3)

"$var"完全是胡说八道。这是一个代替$var的字符串。如果字符串不包含$var以外的任何内容,则它与$var相同:

$var = "foo";
$nonsense = "$var"; // → "foo"

"$var" == $var。按原样使用$var,无需将其包装在字符串中。它也更快。

答案 1 :(得分:2)

唯一的区别是,在第一行中,PHP需要处理字符串并检查其中是否有变量,并用各自的值替换变量。

您可以在此处详细了解:

http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing

修改

但如上所述,输出将是相同的。

答案 2 :(得分:1)

实际上没有形成用户视角的差异。将评估变量双引号,因此;

$hello="world";
$world="hello"; 
echo "$hello $world"

将打印“世界你好”。

此功能允许您执行

"$very $annoying $string"  代替 $very." ".$annoying." ".$string

这就像shell脚本(如果你熟悉shell脚本)。

答案 3 :(得分:0)

它的结果将完全相同!所以不要担心。但如果你应该在它们之间做出选择,你应该选择第二个。

答案 4 :(得分:0)

结果方面没有区别,除非第二个不是数据类型string

解析php中的第一个"$string"以获得“valueofstring”。当你必须插入字符串文字时,PHP消除了用于连接字符串的压力。

"something" . $string . "somethingelse" 
"something{$string}somethingelse"

两者都是一样的。

为了清晰起见较长的字符串,建议您使用大括号{}作为"{$string}"

答案 5 :(得分:0)

$var = "World"
echo "Hello $var" // Output "Hello World"
echo 'Hello $var' // Output "Hello $var"

双引号替换变量内容。

如果您有阵列,则必须执行更多操作:

$var = array("World")
echo "Hello {$var[0]}" // Output "Hello World"

注意$ var [0]

的尖括号{}

答案 6 :(得分:-1)

第一个你只是将字符串传递给连接,好像$ username是你的实际用户名,后者传递变量$ username的值,它等于早先用$ username =“myUsername设置的值“