0

最初这段代码在我的个人开发服务器上工作:

$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];

后来又改回原来的代码,试图找出问题所在——但原来的代码有效!为什么第一行代码会抛出语法错误?我曾尝试寻找解释,但我不知道如何称呼这类问题。

4

1 回答 1

5

直到 PHP 5.4 才添加使用这样的直接数组取消引用。

您将必须分配给一个临时变量:

$arr = your_function();
$value = $arr[0];

请参阅此处的示例 #7:http: //php.net/manual/en/language.types.array.php

于 2013-04-18T16:18:35.333 回答