问题出现:致命错误:[]运算符不支持字符串

我从数据库中获取信息,将其保存在数组中,并以具有循环结构的形式回显它,当我尝试将修改后的信息保存到数据库时遇到问题。


我收到此错误:


致命错误:字符串中不支持[]运算符。


码:


    $namesql1 = "SELECT name,date,text,date2 FROM table WHERE something= '$something'";

    $nameresult1 = mysql_query($namesql1);

    $countrows = mysql_num_rows($nameresult1);

    while ($row = mysql_fetch_array($nameresult1, MYSQL_ASSOC)) {

        $name[] = $row['name'];

        $date[] = $row['date'];

        $text[] = $row['text'];

        $date2[] = $row['date2 '];

    }


/** SOME CODE HERE **/


    $wrotesql = "UPDATE service_report SET  name ='$name' , $date = '$date',$text = '$text[$nro]', ser_date = '$date2[$nro]' WHERE something = '$something')";


    $wroteresult = mysql_query($wrotesql);

有人可以给我一个提示我做错了什么吗?


谢谢。


扬帆大鱼
浏览 771回答 3
3回答

慕哥9229398

从PHP 7.0.x迁移到PHP 7.1.x /中描述了这种行为字符串不再支持 空索引运算符。将空索引运算符应用于字符串(例如$ str [] = $ x)会引发致命错误,而不是无声地转换为数组。就我而言,这仅仅是一个初始化。我将其替换$foo=''为来修复$foo=[]。$foo='';$foo[]='test';print_r($foo);
打开App,查看更多内容
随时随地看视频慕课网APP