Php 如何从mysql表中正确序列化和取消序列化数组(错误)

Php 如何从mysql表中正确序列化和取消序列化数组(错误),php,serialization,Php,Serialization,我一直在尝试编写一些代码,从MySQL表中获取一个数组,向数组中添加一个值,并将数组更新为MySQL表 我收到的错误如下: 注意:unserialize():偏移量为0(共1个字节)时出错 警告:array_push()要求参数1为数组,给定布尔值 //Getting a id from a mysql table $rand1_user_id = $rand1['user_id']; //Selecting data from the row w

我一直在尝试编写一些代码,从MySQL表中获取一个数组,向数组中添加一个值,并将数组更新为MySQL表

我收到的错误如下:
注意:unserialize():偏移量为0(共1个字节)时出错

警告:array_push()要求参数1为数组,给定布尔值

    //Getting a id from a mysql table
                $rand1_user_id = $rand1['user_id'];
    //Selecting data from the row where id="$rand1_user_id"
                $rand1_id = mysqli_query($con, "SELECT * FROM users WHERE id='$rand1_user_id'" );
                $rand1_array = mysqli_fetch_array($rand1_id);
    //Stating array variable
                $array = array();
    //Unserialize the needed array from mysql table while saving it to $array
                $array = unserialize($rand1_array['installer_id']);

    //Adding a variable to $array
                array_push($array, $user_id);

    //Converting array back into serialized so I can add it back into the table
                $array_serialized = serialize($array);
    //Updating the table by adding the serialized array
                $add_array = mysqli_query($con, "UPDATE user SET installer_id='$array_serialized' WHERE id='$rand1_user_id");

更新
查询
“更新用户集安装程序\u id='$array\u serialized'的末尾缺少一个
(单引号),其中id='$rand1\u user\u id''
但我建议改为使用带参数的预处理语句。您收到的错误是什么?@fyrye能否详细说明使用带参数的预处理语句的含义?谢谢你的帮助!请参阅:有关您的特定用例和一般信息。@fyrye我忘了将错误添加到我的问题中,它们现在已经出现了。谢谢