rey*_*orn 4 php mysql serialization
我在mySQL数据库中有这个序列化数据
a:4:{i:0;s:7:"bvl.png";i:1;s:8:"ccop.jpg";i:2;s:11:"reyborn.png";i:3;s:13:"swopgroup.jpg";}
Run Code Online (Sandbox Code Playgroud)
如何更新此数据,例如我想删除ccop.jpg
?
您必须从数据库中获取值,对其进行反序列化,删除元素,序列化并再次保存.
$remove = "ccop.jpg";
//
// get the string from the database
//
$arr = unserialize($str);
foreach($arr as $key => $value)
if ($value == $remove) unset($arr[$key]);
$str = serialize($arr);
//
// save the string back to the database
//
Run Code Online (Sandbox Code Playgroud)
而不是保存序列化的值列表,最好有一个规范化的数据库,只是做一个简单的DELETE FROM images WHERE object_id = ...
.