我怎样才能摆脱这个错误??
Parse error: syntax error, unexpected T_DOUBLE_ARROW in /var/www/core/restvt.api.php on line 35
PHP代码:
$datax = Array();
foreach ($inis as $key => $data){
if ($data=="mem"){
$str = number_format($ARRAY[(array_search($data.':',$ARRAY)+2)]/1024,0,',','.')." MB [ ".number_format(($ARRAY[(array_search($data.':',$ARRAY)+2)]/$ARRAY[(array_search($data.':',$ARRAY)+1)])*100,0,',','.')." % ]";
array_push($datax, "mem"=>$str); //error here, why?
}else{
array_push($datax,$data=>$ARRAY[(array_search($data.':',$ARRAY)+1)]);
}
}
$jsonr = json_encode($datax);
非常感谢你的帮助。。。
该错误实际上是:
意外的=
这意味着PHP不期望这些字符=
您试图以非预期的方式使用该函数,因此当您执行PHP不允许的操作时,PHP会抛出一个错误。
因此,您无法按自己的意愿使用函数,因此需要以不同的方式处理它。
这将很好地工作-将新值(在本例中为$str
)附加到数组中:
$datax['mem'] = $str;
您的数组
$datax
现在具有新的键mem
,该键的(新)值为$str中的任何值。
此方法不仅更易于管理,而且由于您不使用函数调用,因此开销也小得多-array\u push()
访问PHP手册页面也会告诉您这一点。
如果使用array_push()将一个元素添加到数组中,最好使用$ray[]=,因为这样就没有调用函数的开销。
我讨厌看到人们使用array_push——我知道这是合法的。在这种情况下,不能按键=
$datax['mem'] = $str;
手册:http://php.net/manual/en/function.array-push.php
编辑
如果坚持使用
array\u push
type方法,则需要使用新的键值对创建一个新数组,然后使用array\u merge
加入它们:
$new_data = array('mem' => $str);
$datax = array_merge($datax, $new_data);
我以前从未遇到过这种情况,但现在我们开始: 有什么想法吗? 运行php fpm 5.3 Ubuntu 看起来好像评论不起作用...
这是我正在开发的wordpress插件的代码。 我是插件开发新手,不知道为什么会出现这样的错误:
我正在使用Flash和PHP创建一个JPG。我让Flash和PHP在本地主机服务器上按预期工作。当我上传到服务器时,出现以下错误: 分析错误:语法错误,在/home/carlosrg/public\u html/mysubdomain/image中出现意外的“:”。php在线6 以及守则: 提前感谢您的时间。
问题内容: 调试代码时出现此错误: PHP解析错误:语法错误,第72行的order.php中出现意外的T_OBJECT_OPERATOR 这是代码段(从第72行开始): 问题答案: 不幸的是,不可能在刚用PHP 5.4之前创建的对象上调用方法。 在PHP 5.4和更高版本中,可以使用以下内容: 注意必填的括号对。 在以前的版本中,必须在变量上调用方法:
下面是代码的一个片段(从第72行开始):
问题内容: 这个问题已经在这里有了答案 : 参考-此错误在PHP中意味着什么? (36个答案) 6年前关闭。 完全错误:解析错误:语法错误,意外的’‘(T_ENCAPSED_AND_WHITESPACE),期望的标识符(T_STRING)或变量(T_VARIABLE)或数字(T_NUM_STRING) 它说错误在第12行上。 任何帮助将不胜感激! 问题答案: 您有多余的单引号: