2

我正在本地编写应用程序,但是当我迁移到服务器时,使用此行时出现解析错误:

if(!is_array($data[array_keys($data)[0]])) 

回报:

解析错误:语法错误,/home/file.php 中出现意外的 '[',期待 ']'

如果我像这样重写这一行:

$var1 = array_keys($data);
if(!is_array($data[$varX[0]])) 

有用。

我需要在服务器上激活什么,才能使其在第一个示例中正常工作?

谢谢。

4

2 回答 2

2

您需要运行 PHP 5.4 版才能使用这样的数组取消引用。我怀疑您的服务器上的 PHP 版本低于本地系统。

http://php.net/manual/en/migration54.new-features.php

在“新功能”下:

添加了函数数组解引用,例如 foo()[0]。

于 2013-07-20T15:31:24.077 回答
0

您正在尝试做的称为“数组取消引用”,它仅在 PHP 5.4 中可用。因此,如果您的 PHP 版本早于您的版本,它将无法工作。

于 2013-07-20T15:31:27.690 回答