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

yipeiwu_com6年前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面向对象程序设计之对象生成方法详解

本文实例讲述了PHP面向对象程序设计之对象生成方法。分享给大家供大家参考,具体如下: 对象 看个例子 <?php abstract class Employee { /...

PHP也能干大事之PHP中的编码解码详解

PHP也能干大事之PHP中的编码解码详解

写在前面 PHP也能干大事是我总结的PHP语法特性及相关函数类库的经典用法,并不一定是真正能实现四两拨千斤的功效,但是掌握这些方法,可以在你的工作和学习上有一些帮助,希望大家能集思广益,...

在WordPress中实现评论头像的自定义默认和延迟加载

自定义 WordPress 默认评论头像 对于没有设置Gravatra头像的评论者来说,WordPress会显示一个你在后台设置的默认头像,可以是神秘人、空白、默认的Gravatar 标...

PHP file_exists问题杂谈

PHP file_exists问题杂谈

问题   公司有个框架是基于smarty写的,我负责php的升级,维护人员把新环境布上来之后,测试人员找我提出经常报错(错误:提示找不到文件的)。   我追踪了一下代码,原来是smart...

PHP过滤黑名单关键字的方法

本文实例讲述了PHP过滤黑名单关键字的方法。分享给大家供大家参考。具体实现方法如下: 关键字过滤非常的简单把要过滤的内容存在数组或文档中,然后用户提交时我们进行preg_match或is...