Parse error: syntax error, unexpected '[' in in PHP?
Parse error: syntax error, unexpected '[' in in PHP?
我有这个 php 功能:
function soheiladder($old_h,$old_m,$new_m)
{
$old_total_m = ($old_h * 60 ) + $old_m ;
$new_total_m = $old_total_m + $new_m ;
$output_h = intval($new_total_m / 60 );
$output_m = ($new_total_m % 60);
$output =array();
$output[0] = $output_h; // saat
$output[1] = $output_m; // minute
return $output;
}
当我想以这种方式使用它的输出时:
echo soheiladder($pele_h ,$pele_m,$ajib) [0] ;
echo soheiladder($pele_h ,$pele_m,$ajib) [1] ;
它在 wamp 服务器上运行良好,但当我在线测试时 php 说:
Parse error: syntax error, unexpected '[' in ...
每个输出!
我应该怎么办 ?
因为每个 PHP 版本都不支持该语法(即 函数数组取消引用 )。
从 PHP 5.4
开始实施
您可以在此处阅读 RFC:https://wiki.php.net/rfc/functionarraydereferencing
有趣的是,它在 2009 年首次被拒绝,最终在几年后重新获得批准并添加。
请记住,根据您的代码段,您应该缓存结果:
$cached = soheiladder($pele_h ,$pele_m,$ajib);
echo $cached[0], $cached[1];
你的PHP版本明显低于5.4,支持函数数组解引用所以先升级PHP
或者将输出存储在变量中,然后获取适当的密钥
我有这个 php 功能:
function soheiladder($old_h,$old_m,$new_m)
{
$old_total_m = ($old_h * 60 ) + $old_m ;
$new_total_m = $old_total_m + $new_m ;
$output_h = intval($new_total_m / 60 );
$output_m = ($new_total_m % 60);
$output =array();
$output[0] = $output_h; // saat
$output[1] = $output_m; // minute
return $output;
}
当我想以这种方式使用它的输出时:
echo soheiladder($pele_h ,$pele_m,$ajib) [0] ;
echo soheiladder($pele_h ,$pele_m,$ajib) [1] ;
它在 wamp 服务器上运行良好,但当我在线测试时 php 说:
Parse error: syntax error, unexpected '[' in ...
每个输出! 我应该怎么办 ?
因为每个 PHP 版本都不支持该语法(即 函数数组取消引用 )。
从 PHP 5.4
您可以在此处阅读 RFC:https://wiki.php.net/rfc/functionarraydereferencing
有趣的是,它在 2009 年首次被拒绝,最终在几年后重新获得批准并添加。
请记住,根据您的代码段,您应该缓存结果:
$cached = soheiladder($pele_h ,$pele_m,$ajib);
echo $cached[0], $cached[1];
你的PHP版本明显低于5.4,支持函数数组解引用所以先升级PHP
或者将输出存储在变量中,然后获取适当的密钥