本文实例讲述了php对象和数组相互转换的方法。分享给大家供大家参考。具体分析如下:
这里定义2个php匿名对象和数组相互转换的函数,代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
function array2object( $array ) { if ( is_array ( $array )) { $obj = new StdClass(); foreach ( $array as $key => $val ){ $obj -> $key = $val ; } } else { $obj = $array ; } return $obj ; } function object2array( $object ) { if ( is_object ( $object )) { foreach ( $object as $key => $value ) { $array [ $key ] = $value ; } } else { $array = $object ; } return $array ; } |
用法示例如下:
1
2
3
4
5
|
$array = array ( 'foo' => 'bar' , 'one' => 'two' , 'three' => 'four' ); $obj = array2object( $array ); print $obj ->one; // output's "two" $arr = object2array( $obj ); print $arr [ 'foo' ]; // output's bar |
对象转化为数组 $conn=mysqli_connect('localhost','root','','cf'); $sql="select * from dis where id=81"; $rs=mysqli_query($conn,$sql); $s=$rs->num_rows; var_dump($rs); echo '<br><br>'; echo $s; echo '<br><br>'; function object_to_array($obj) { $obj = (array)$obj; foreach ($obj as $k => $v) { if (gettype($v) == 'resource') { return; } if (gettype($v) == 'object' || gettype($v) == 'array') { $obj[$k] = (array)object_to_array($v); } } return $obj; } $array=object_to_array($rs); var_dump($array); echo '<br><br>'; $conn=mysql_connect('localhost','root',''); mysql_query('set names utf8'); mysql_query('use cf'); $rs=mysql_query('select count(*) from dis where id=81',$conn); var_dump($rs);
|