草庐IT

SERIALIZATION

全部标签

php - 反序列化阿拉伯字母渲染 ???作为输出

我有以下代码:functionappear($data){$output='';$unsee=unserialize($data);if(is_array($nsee)){$output.=''."";foreach($nseeas$button){$output.=loadbutton($button);}$output.='IP'.$_SERVER['REMOTE_ADDR'].''."";$output.=''."";}return$output;}functionloadbutton($button){$output='';$output.=''."";$output.='';

php - max_input_vars 和序列化数据

我在页面上有大量的输入元素,应该通过ajax提交给服务器。我已经创建了一个数组并试图发送它,但是我收到了一个php警告:“您的PHP配置限制了要在表单中发布的最大字段数:max_input_vars为1000”所以,我决定绕过这个警告并将我所有的巨大数组修改为序列化字符串。结果-警告消失了,但我在服务器端得到了截断的数据。附言在这两种情况下,问题都可以通过增加max_input_vars变量来解决。但是在第二个数据中,数据被parse_str($_POST['data'],$data)函数截断了!为什么在我尝试解析一个巨大的字符串时应用了“max_input_vars”的限制?

php - 使用 PHP 类型将嵌套对象序列化/反序列化为 JSON

我有扩展抽象类的类。我需要通过字符串(最好是JSON)创建这些类的实例。许多对象是嵌套的,许多属性是私有(private)的。我需要一种方法:创建完整对象的JSON字符串(具有私有(private)属性和嵌套对象-具有它们的私有(private)属性)。使用正确的类型和所有嵌套对象从JSON字符串创建一个新对象。我猜它需要递归。如果我只是将对象转换为数组,我使用的命名空间最终看起来像废话。我正在考虑编写一个解析器,在我的JSON字符串中标记类,然后为每个类硬编码一个工厂函数,但这会花费很多时间。 最佳答案 我建议使用jms序列化程序

PHP反序列化偏移错误

我有这个代码:$serialized=$_POST['cartSer'];echo$serialized;打印这个:a:1:{s:15:\"测试\";s:3:\"999\";}然后我添加这段代码:echounserialize($serialized);并以这个错误结束:注意:unserialize()[function.unserialize]:第5行/mypage.php中43个字节的偏移量5处出错我在反序列化方面做错了什么? 最佳答案 听起来你有magicquotes启用。要么禁用它们,要么通过stripslashes运行您的

php - 序列化/反序列化 php 对象

我无法理解PHP中序列化/反序列化的概念。假设我有一个非常简单的PHP对象(类someObject)并且在设置该对象的属性后我想序列化它:所以我调用:serialize($someObject);我想通过html表单将这个序列化对象传输到另一个phpskript,所以我将它设置为隐藏值:"在下一个php脚本中,我想使用反序列化来取回我的对象​​并将其传输,例如到数据库。$unserialize=unserialize($_POST['someObject'])但这总是返回BOOL(false)-那么我在这里缺少什么?感谢您的帮助! 最佳答案

php - radio 未使用 serializeArray 进行序列化

索引.php:Username:Password:Gender:MaleFemaleEmail:Register$("#register").click(function(){$.post($('#regform').attr("action"),$('#regform').serializeArray(),function(data){if(data=='checkradio'){$('#regmsg').html('Pleasechooseagender.');}});});服务器端:$required_fields=array('username','password','gen

php - Boolean和Integer是序列化后的字符串

我正在使用WordPressupdate_post_meta像这样保存一个数组$obj=array('array'=>array(1,'zwei',!!3),'string'=>'abc','bool'=>true,'bool2'=>false,'integer'=>1,'integer2'=>17);update_post_meta($post_ID,'my-key',$obj);但是如果我检查我得到的原始字段a:6:{s:5:"array";a:3:{i:0;i:1;i:1;s:4:"zwei";i:2;s:1:"1";}s:6:"string";s:3:"abc";s:4:"bo

PHP 严格反序列化

我有一个存储在MemCached中的有拼写错误的类。这是示例:classPerson{public$n1ame;}echoserialize(newPerson());我在下一个代码版本中修复了拼写错误:classPerson{public$name;}var_dump(unserialize($previousSerializedPersion));但这是发生了什么:PHP隐式地向我的对象添加了不存在的字段:object(Person)#1(2){["name"]=>NULL["n1ame"]=>NULL}我的人得到了额外的数据字段。我期望的是一个异常(exception)。有什么办

c# - PHP 序列化的 C# 等价物是什么

我有一些PHP代码,我想用C#重做。PHP代码有类似fputs($file,serialize($val))什么是点NET,特别是C#等同于序列化??? 最佳答案 using(Streamstream=File.Open(filePath,FileMode.Create)){BinaryFormatterbformatter=newBinaryFormatter();bformatter.Serialize(stream,myObject);} 关于c#-PHP序列化的C#等价物是什么,

php - 对象序列化 __sleep

php手册指出:Itcancleanuptheobjectandissupposedtoreturnanarraywiththenamesofallvariablesofthatobjectthatshouldbeserialized.我的理解是,如果有一个类(class)。像这样:它只会序列化对象和属性$bar?像这样:object(Foo)[2]public'bar'=>string'bar'(length=3)但它返回:object(Foo)[2]public'bar'=>string'bar'(length=3)public'baz'=>string'baz'(length=3