php数组定义,php字符串长度函数
Php数组到对象函数
功能代码:服务
早上在做一个php项目的时候,遇到了一个对象和数组相互转换的问题,于是写了两个关于对象到数组和数组到对象的自定义函数,记录下来分享给有需要的童鞋。 Php数组到对象函数 功能代码:服务器端编程语言(Professional Hypertext Preprocessor的缩写) functionr _ to _ obj(arr){ $ obj=null if(is_array($arr)){ $ obj=newStdClass(); foreach($arras$key=$a){ $ obj-$ key=$ a; } } if(is_object($arr)){ $ obj=$ arr } 返回$ obj } 一端有带圈可握的短马鞭 函数调用方法:服务器端编程语言(Professional Hypertext Preprocessor的缩写) //这是一个数组 $arr=array('name'='晓明',' sex '=16); $ obj=arr _ to _ obj($ arr); echo $ obj-name; //输出结果:晓明 一端有带圈可握的短马鞭 注意: StdClass是一个没有成员变量和成员方法的类,以及它所有的魔法方法、父类、接口等。在初始化时被设置为NULL。因为在PHP中我们不能动态地给一个类添加方法,所以这个类只能用来处理动态属性PHP字符串变量,这也是一种常见的用法。 Php对象到数组函数 功能代码:服务器端编程语言(Professional Hypertext Preprocessor的缩写) functionobj_to_arr($obj){ $ array=array(); if(is_object($obj)){ foreach($objas$key=$a){ $ array[$ key]=$ a; } } if(is_array($obj)){ $ array=$ obj } 返回$ array } 一端有带圈可握的短马鞭 函数调用:服务器端编程语言(Professional Hypertext Preprocessor的缩写) //创建一个类并添加对象 $ obj=newStdClass(); $obj-Name='鸟和鱼博客'; $ obj-Host=' . feiniaomy . com '; $ arr=obj _ to _ arr($ obj); var _ dump($ arr); 一端有带圈可握的短马鞭 输出:数组(2){ ['名称']= 字符串(18)“鸟和鱼的博客” ['Host']= string(24)' . feiniaomy . com ' } 补充说明: Is_object():用于检测变量是否为对象。 Is_array():用于检测变量是否为数组。 系统函数数组与对象的相互转换 1、要数组的对象?服务器端编程语言(Professional Hypertext Preprocessor的缩写) $ obj=newStdClass(); $obj-Name='小红'; $ obj-Sex=' 16 '; //从这里开始转换 //json_encode()函数的第二个参数为true $ arr=JSON _ decode(JSON _ encode($ obj),true); var _ dump($ arr); 一端有带圈可握的短马鞭 打印结果:数组(2){ ['名称']= 字符串(6)“小红” ['性']= 字符串(2)'16 ' } 2.数组到对象?服务器端编程语言(Professional Hypertext Preprocessor的缩写) $arr=array('id'=1,' name '=' AAA '); //没有设置//json_encode()函数的第二个参数,默认为false。 $ obj=JSON _ decode(JSON _ encode($ arr)); var _ dump($ obj); 一端有带圈可握的短马鞭 打印结果:对象(标准类)#3(2){ ['id']= int(1) ['名称']= 字符串(3)'aaa ' } php数组和对象交换的其他方法?服务器端编程语言(Professional Hypertext Preprocessor的缩写) /** *对象的数组 *鸟类和鱼类博客 * @ param arrayarr数组 *@returnobject */ functional raytoobject($ arr){ if(gettype $ arr)!='array'){ 返回; } foreach($arras$k=$v){ if(getType($ v)==' array ' | | getType($ v)==' object '){ $ arr[$ k]=(object)array object($ v); } } return(object)$ arr; } /** *对象到数组 *鸟类和鱼类博客 * @ param objectobj对象 *@returnarray */ functionobjectToArray($obj){ $obj=(数组)$ obj; foreach($objas$k=$v){ if(gettype($v)=='resource'){ 返回; } if(gettype($ v)==' object ' | | gettype($ v)==' array '){ $ obj[$ k]=(array)objectToArray($ v); } } 返回$ obj } 一端有带圈可握的短马鞭 (编辑:源码门户网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |