最初这段代码在我的个人开发服务器上运行:
$id = str_split(md5(mt_rand()), 16)[0];
但是在另一台服务器上,(相同版本的Apache和PHP,我不知道远程php.ini是什么样的),代码抛出了这个错误:
Parse error: syntax error, unexpected '[' ...
我通过将代码更改为“
”来解决问题$id = str_split(md5(mt_rand()), 16);
$id = $id[0];
然后后来改回原来尝试找出问题 - 但原始代码有效!为什么第一行代码会抛出语法错误?我试过寻找解释,但我不知道该怎么称呼这个问题。
答案 0 :(得分:5)
直到PHP 5.4才使用这样的直接数组解引用。
您必须分配一个临时变量:
$arr = your_function();
$value = $arr[0];