edw*_*tyl 3 php mysql sql arrays
所以我有一个PHP数组"$ shared",其值为[0,1,2](我只是以此为例).我想从我的MySQL数据库插入和检索这个数组,但它无法正常工作.
目前我正在使用此代码插入它:
mysqli_query($dbhandle, "INSERT INTO table (arraytest) VALUES ('$shared')");
Run Code Online (Sandbox Code Playgroud)
在上面的代码之后,'arraytest'列中'table'中的值是'Array'而不是[0,1,2],但是数组应该在MySQL数据库中看起来像.
将数组插入我的数据库后,我想检索它,并且我目前正在使用此代码:
$id='2';
$result = mysqli_query($dbhandle, "SELECT arraytest FROM table");
while ($row = mysqli_fetch_array($result)) {
$shared=$row{'arraytest'};
if(in_array($id, $shared)){
echo 'Value is in the array. Success!';
}
}
Run Code Online (Sandbox Code Playgroud)
我在网上进行了一些研究,并没有找到一种方法来具体做到这一点.
我想将PHP数组()插入数据库中的表中的一个单元格中,然后我想从数据库中检索该数组,并检查我之前插入数据库的数组中是否有某个值.
PS我不是试图从数据库中检索整列数据作为数组.这是我在搜索答案时在谷歌上发现的,这不是我想要做的.
我不得不质疑你为什么要这样做,但最简单的答案是序列化数组.
"INSERT INTO table (arraytest) VALUES ('" . serialize($shared) . "')"
Run Code Online (Sandbox Code Playgroud)
然后,您可以unserialize在从数据库中检索它时使用
您应该正确地参数化您的查询以防止注入或错误.