php實(shí)現(xiàn)根據(jù)字符串生成對(duì)應(yīng)數(shù)組的方法
本文實(shí)例講述了php實(shí)現(xiàn)根據(jù)字符串生成對(duì)應(yīng)數(shù)組的方法,是比較實(shí)用的技巧。分享給大家供大家參考。具體方法如下:
先看看如下示例:
<?php $config = array( 'project|page|index' => 'content', 'project|page|nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'project|page|open' => true ); ?>
根據(jù)$config生成以下數(shù)組:
<?php $result = array( 'project' => array( 'page' => array( 'index' => 'content', 'nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'open' => true ) ) ); ?>
方法:使用eval實(shí)現(xiàn):
<?php $config = array( 'project|page|index' => 'content', 'project|page|nav' => array( array( 'image' => '1.jpg', 'name' => 'home' ), array( 'image' => '2.jpg', 'name' => 'about' ) ), 'project|page|open' => true ); $result = array(); foreach($config as $key=>$val){ $tmp = ''; $keys = explode('|', $key); for($i=0,$len=count($keys); $i<$len; $i++){ $tmp .= "['".$keys[$i]."']"; } if(is_array($val)){ eval('$result'.$tmp.'='.var_export($val,true).';'); }elseif(is_string($val)){ eval('$result'.$tmp.'='.$val.';'); }else{ eval('$result'.$tmp.'=$val;'); } } print_r($result); ?>
輸出結(jié)果:
Array
(
[project] => Array
(
[ page ] => Array
(
[index] => content
[nav] => Array
(
[0] => Array
(
[image] => 1.jpg
[name] => home
)
[1] => Array
(
[image] => 2.jpg
[name] => about
)
)
[open] => 1
)
)
)
希望本文所述對(duì)大家PHP程序設(shè)計(jì)的學(xué)習(xí)有所幫助。
相關(guān)文章
PHP實(shí)現(xiàn)的下載遠(yuǎn)程圖片自定義函數(shù)分享
這篇文章主要介紹了PHP實(shí)現(xiàn)的下載遠(yuǎn)程圖片自定義函數(shù)分享,本文直接給出實(shí)現(xiàn)代碼和,本文直接給出實(shí)現(xiàn)代碼和使用方法,需要的朋友可以參考下2015-01-0124條貨真價(jià)實(shí)的PHP代碼優(yōu)化技巧
這篇文章主要為大家分享了24條貨真價(jià)實(shí)的PHP代碼優(yōu)化技巧,幫助大家更好的進(jìn)行PHP項(xiàng)目開(kāi)發(fā),感興趣的小伙伴們可以參考一下2016-07-07php中利用str_pad函數(shù)生成數(shù)字遞增形式的產(chǎn)品編號(hào)
PHP開(kāi)發(fā)項(xiàng)目中,在做產(chǎn)品編號(hào)時(shí),客戶反要求自動(dòng)生成產(chǎn)品編號(hào),格式如”QB00001″,數(shù)字遞增形式2013-09-09php數(shù)組排序usort、uksort與sort函數(shù)用法
這篇文章主要介紹了php數(shù)組排序usort、uksort與sort函數(shù)用法,詳細(xì)介紹了usort、uksort與sort函數(shù)在數(shù)組排序中的應(yīng)用,具有不錯(cuò)的參考借鑒價(jià)值,需要的朋友可以參考下2014-11-11PHP similar_text 字符串的相似性比較函數(shù)
PHP尋找兩個(gè)字符串的相似性的similar_text ()函數(shù)使用方法2010-05-0510個(gè)對(duì)初學(xué)者非常有用的PHP技巧
這篇文章主要為大家詳細(xì)介紹了10個(gè)對(duì)初學(xué)者非常有用的PHP技巧,這些PHP技巧適用于初學(xué)者,而不是那些已經(jīng)在使用MVC框架的人,感興趣的小伙伴們可以參考一下2016-04-04