php对象和数组相互转换的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php对象和数组相互转换的方法。分享给大家供大家参考。具体分析如下:

这里定义2个php匿名对象和数组相互转换的函数,代码如下:

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;
}

用法示例如下:

$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

希望本文所述对大家的php程序设计有所帮助。

相关文章

php实现json编码的方法

本文实例讲述了php实现json编码的方法。分享给大家供大家参考。具体如下: <?php /* * json */ $books = array('key1'=&g...

php 页面执行时间计算代码

代码如下: 复制代码 代码如下:<? $pagestartime=microtime(); ?> <!--网页内容 start--> 网页内容 ... ... &...

提升PHP性能的21种方法介绍

1.用单引号来包含字符串要比双引号来包含字符串更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会。2.如果能将类的方法定义成static,就尽量定义成static,它的速...

浅析php中jsonp的跨域实例

我们现在www.test.com这个域名下面有这么个html文件testjsonp.html:复制代码 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DT...

关于Laravel Service Provider开发设置延迟加载时遇到的问题详解

前言 本文主要介绍了关于Laravel Service Provider设置延迟加载时遇到的一些问题,之所有这篇文章,是因实际项目需求,近日在开发 laravel-database-lo...