我是 PHP 新手。当我使用“echo”打印一个数组元素时,我的成功似乎取决于我命名索引的名称。这不可能是对的,对吧?!我觉得我快疯了。这段代码:
$ARRAY['q1'] = 'foo';
echo "q1 is $ARRAY[q1]<br>";
工作正常。但是这段代码:
$ARRAY['1q'] = 'foo';
echo "1q is $ARRAY[1q]<br>";
产生错误:
解析错误:语法错误,意外的 T_STRING,在第 6 行的 /var/www/html/test.php 中需要 ']'
我知道我可以纠正这样的问题:
echo "1q is " . $ARRAY['1q'] . "<br>";
但我的问题是为什么数组索引“1q”与“q1”在第一个代码块中很重要?我什至检查了 1q 是否是某种常数,但似乎不是。这是在字符串中插入数组元素的不正确方法吗?(我从 PHP 文档中复制了它。)
这是在 PHP 5.3.8 中。我真的很感激任何帮助。
编辑: 好的,我从 PHP 手册的这个页面上的示例 #8 中得到了这个回显语法:http : //www.php.net/manual/en/language.types.string.php 显然这不是正确的方法事物。我将在手册中添加用户提供的注释。
产生此错误的整个脚本将是:
<?php
$ARRAY['1q'] = 'foo';
echo "1q is $ARRAY[1q]<br>";
?>