我对serialize不是很理解,问一些相关问题 Serialize 用来将一个语言实体(对象、数组、函数等)序列化成一个字符串以便存储,Unserialize 则执行逆操作,将一个字符串恢复成原来的语言实体。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 代码里的问题$fd=unserialize($files);/*上面这行为什么必须写成$files = implode("", @file("store"));才正确?*/ $files=file("store");$fd=unserialize($files);如果我的store里只有一行字符,那么这样正确吗? 你写入的是序列化后的字符串,取出时也应该把全部内容都取出来,所以要用$files = implode("", @file("store"));读出文件内容,也可以用fread/fgets/file_get_contents等。记住,serialize是序列化数组的,成为一个字符串。而unserialize就是将这个字符串反序化为数组。所以unserialize的参数是一个字符串,而不是一个数组。 不管你是多少行,那样写都是错误的。unserialize的参数是一个字符串,这个字符串就是serialize一个数组的结果。我看你还是先看看手册,两个函数是干什么的吧。 $fd=unserialize($files['0']);我改成这样,是否就始终正确? 如果文件只有一行,且这样写$fd=unserialize(trim($files['0']));也可以。你可以尝试一下。 /*上面这行为什么必须写成$files = implode("", @file("store"));才正确?*/这是对的函数unserialize需要一个字符做为串参数而file函数返回的是一个数组 DIV+sqlserver 一个图片采集问题(费解)显示的图片不是我想要的图片, 关于js的一个小问题 大家帮帮忙! 关于include apache 重写的问题 取和GET值问题 很怪的错误??????? 如何将图片上传,并在网页上显示出来?? php的循环打印,急!!!!!!!! 关于图像gif89a格式的显示? 用JS的URL方式如何向另一个页面传值? 请教PHP捕捉SQL SERVER触发器错误的问题
$fd=unserialize($files);
/*上面这行为什么必须写成$files = implode("", @file("store"));才正确?*/
$fd=unserialize($files);如果我的store里只有一行字符,那么这样正确吗?
$files = implode("", @file("store"));
读出文件内容,也可以用fread/fgets/file_get_contents等。记住,serialize是序列化数组的,成为一个字符串。而unserialize就是将这个字符串反序化为数组。所以unserialize的参数是一个字符串,而不是一个数组。
我改成这样,是否就始终正确?
$fd=unserialize(trim($files['0']));
也可以。你可以尝试一下。
函数unserialize需要一个字符做为串参数
而file函数返回的是一个数组