PHP问题

hellosm 2012-05-01 04:45:45
运行时 Parse error: syntax error, unexpected '[' 报错

源码段:
function tblinsert( $tbl, $vars )
{
global $msql;
$scl = "";
do
{
$key = each($vars)[0];
$val = each($vars)[1];
if ( each( $vars ) )
{
$scl .= "`".$key."`='".$val."',";
}
} while ( 1 );
$scl = substr( $scl, 0, 0 - 1 );
$msql->query( "insert into dev".$tbl." set {$scl}" );
}



报错行数是在 $key = each($vars)[0];这一行
...全文
46 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
改一下昵称 2012-05-01
  • 打赏
  • 举报
回复
wamp暂时还没出5.4版,将就着5.3用吧,现在还有很多服务器都停留在5.2阶段。
其实5.4的并没有什么足够吸引人的新特性,就像上面的问题,在其它版本下也一样有解决方法,只是稍微修改的事。
hellosm 2012-05-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

each($vars)[0];
这种写法是php5.4以后才支持的,也就是说你必须安装了在最近两个月才发布的新版本
$r = each($vars);
$key = $r[0];
[/Quote]

那如果是php5.3.10,应该怎么写呢?
我是用wamp搭建的服务器,能不能将wamp下的php升级的?
一起混吧 2012-05-01
  • 打赏
  • 举报
回复
多写一步。
$arr=each($vars);
$key = $arr[0];
$val = $arr[1];
改一下昵称 2012-05-01
  • 打赏
  • 举报
回复
each($vars)[0];
这种写法是php5.4以后才支持的,也就是说你必须安装了在最近两个月才发布的新版本
$r = each($vars);
$key = $r[0];

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧