我知道使用''分隔字符串而不是“”更高效...
但我想知道是否有任何表现改进这样做
$a = array( 'table' => 'myTable', 'order' => 'myOrder' );
$table = $a['table']
而不是
$a = array( table => 'myTable', order => 'myOrder' );
$table = $a[table]
我想是的,但只是想知道你的意见......
答案 0 :(得分:8)
是。在您的第二个示例中,PHP处理器检查“table”是否在将其默认为数组键之前定义为常量,因此它会进行多次检查。这也可能造成问题。
考虑一下:
const table = 'text';
$a = array( table => 'myTable', order => 'myOrder' );
$table = $a[table]
现在,PHP将您的数组解释为$ a [text],这不是您想要的。
答案 1 :(得分:5)
你应该总是引用你的字符串。在第二个示例中,PHP确实将table
和order
转换为字符串,但如果table
或order
为defined作为常量,则PHP将使用常量而不是字符串'table'或'order'。
答案 2 :(得分:1)
根据研究,“字符串”和“字符串”之间的差异可以忽略不计。并不重要,但它做得更快
echo "this is {$var1} and {$var2} and {$var3}";
而不是
echo 'this is ' . $var1 . ' and ' . $var2 . ' and ' . $var3;