加入收藏 | 设为首页 | 会员中心 | 我要投稿 上海站长网 (https://www.021zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php数组定义,php字符串长度函数

发布时间:2022-12-10 14:04:53 所属栏目: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

}

一端有带圈可握的短马鞭

(编辑:上海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!