php中的$ foo [bar]和$ foo ['bar']之间的区别

Vin*_*rez 4 php arrays constants

我一直在使用$foo[bar]很多项目而没有注意到失踪的'

如今,我理解它为什么会起作用,我认为这是因为缺少常量被它的名称替换,因此指的是完全相同的数组项.

但是......这是非常错误还是可以被接受.有什么缺点?我应该深入挖掘旧项目来取代它,还是性能下降真的不明显?

Sha*_*ran 5

有什么缺点?

假设你有一个像这样的网址http://somesite.com/test.php?item=20,

场景:1(您的情况)

<?php
echo $_GET[item]; // 20 is printed with a warning.. 
Run Code Online (Sandbox Code Playgroud)

场景:2(最坏的情况)

<?php
define('item',20);
echo $_GET[item]; // A warning will be thrown and nothing will be printed.
Run Code Online (Sandbox Code Playgroud)

我应该深入挖掘旧项目来取代它,还是性能下降真的不明显?

我建议你这样做.