运行时 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];这一行

解决方案 »

  1.   

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

  2.   

    多写一步。
    $arr=each($vars);
    $key = $arr[0];
    $val = $arr[1];
      

  3.   


    那如果是php5.3.10,应该怎么写呢?
    我是用wamp搭建的服务器,能不能将wamp下的php升级的?
      

  4.   

    wamp暂时还没出5.4版,将就着5.3用吧,现在还有很多服务器都停留在5.2阶段。
    其实5.4的并没有什么足够吸引人的新特性,就像上面的问题,在其它版本下也一样有解决方法,只是稍微修改的事。