日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > php數組與對象相互轉換方法

php數組與對象相互轉換方法

來源:程序員人生   發布時間:2013-11-17 16:18:37 閱讀次數:2589次

php數組與對象相互轉換方法

  1. function arrayToObject($e){ 
  2.     ifgettype($e)!='array' ) return
  3.     foreach($e as $k=>$v){ 
  4.         ifgettype($v)=='array' || getType($v)=='object' ) 
  5.             $e[$k]=(object)arrayToObject($v); 
  6.     } 
  7.     return (object)$e
  8.  
  9. function objectToArray($e){ 
  10.     $e=(array)$e
  11.     foreach($e as $k=>$v){ 
  12.         ifgettype($v)=='resource' ) return
  13.         ifgettype($v)=='object' || gettype($v)=='array' ) 
  14.             $e[$k]=(array)objectToArray($v); 
  15.     } 
  16.     return $e

關于數組轉換為對象,在phpx有看到一些帖子討論.

  1. $andy = array(); 
  2. $andy['a'] = 1; 
  3. $andy['b'] = 2; 
  4. $andy['c'] = 3; 

把andy強制轉換為數組,似乎引用的方便些了,主要是變成了->

  1. $andy = array(); 
  2. $andy = (object)$andy
  3. $andy->a = 1; 
  4. $andy->b = 2; 
  5. $andy->c = 3; 

還嫌它麻煩,再用StdClass

  1. $andy = new StdClass; 
  2. $andy->a = 1; 
  3. $andy->b = 2; 
  4. $andy->c = 3; 

stdClass 是PHP的一個基類,所有的類幾乎都繼承這個類,所以任何時候都可以被new,可以讓這個變量成為一個object,同時,這個基類又有一個特殊的地方,就是沒有方法,在這里,還有一點是對象和數組資源耗費的問題:PHP5的對象的獨特性,對象在任何地方被調用,都是引用地址型的,所以相對消耗的資源會少一 點,在其它頁面為它賦值時是直接修改,而不是引用一個拷貝,數組在程序的使用中應該是最方便的,然而數組的每次被引用($a = $b),其實都是創建了一個副本,而且,數組被unset后,還是占用了內存(沒有測試過),還有一個函數arrayobject,可以直接將數組轉化為 對象這也是一個好辦法.

  1. ArrayObject::__construct -- Construct a new array object 
  2. <?php 
  3. $array = array('1' => 'one'
  4. '2' => 'two'
  5. '3' => 'three'); 
  6. $arrayobject = new ArrayObject($array); 
  7. print_r($arrayobject); 
  8. ?> 
  9. ArrayObject Object 
  10.     [1] => one 
  11.     [2] => two 
  12.     [3] => three 

試驗了一下對象轉換為數組,也可以強制轉換:

$arr = (array)$obj;

如下例子轉換結果,可對比:

  1. Tag Object 
  2.     [name] => main 
  3.     [text] =>  
  4.     [parrent] =>  
  5.     [content] =>  
  6.     [props] => Array 
  7.         ( 
  8.         ) 
  9.  
  10.     [inner] => Array 
  11.         ( 
  12.         ) 
  13.  
  14.     [level] => 0 
  15.  
  16. Array 
  17.     [name] => main 
  18.     [text] =>  
  19.     [parrent] =>  
  20.     [content] =>  
  21.     [props] => Array 
  22.         ( 
  23.         ) 
  24.  
  25.     [inner] => Array 
  26.         ( 
  27.         ) 
  28.  
  29.     [level] => 0 
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美激情视频一区 | 国产区一区 | 999久久久免费精品国产 | 91在线精品秘密一区二区 | 国产韩国精品一区二区三区 | 国产精品久久久久久久免费软件 | 久久综合99 | 成人传媒 | 黄色国产在线观看 | 国产成人精品视频 | 亚洲精品一区二区久 | 欧美视频一二三区 | 97总资源 | 成人久久久久久久 | 最近最好最新2019中文字幕免费 | 一区在线播放 | 国产理论电影 | 国产日产亚洲精品 | 在线精品福利 | 99青草 | 欧美片子 | 日韩精品 | 亚洲综合久久久久 | 九九九久久久久久久 | 国产精品视屏 | 91在线亚洲 | 国产精品99久久久 | 欧美区一| 国产尤物av| 成人一区视频 | 日韩免费福利视频 | 精品自拍视频 | 欧美日韩亚洲一区 | 在线免费国产视频 | 黄色毛片在线观看 | 国产精品久久久久久久久久免费看 | 国产精品v亚洲精品v日韩精品 | 爱爱的免费视频 | 日韩小视频 | 91精品国产色综合久久不卡98口 | 免费黄色片子 |