《PHP應(yīng)用:php實(shí)現(xiàn)根據(jù)字符串生成對應(yīng)數(shù)組的方法》要點(diǎn):
本文介紹了PHP應(yīng)用:php實(shí)現(xiàn)根據(jù)字符串生成對應(yīng)數(shù)組的方法,希望對您有用。如果有疑問,可以聯(lián)系我們。
本文實(shí)例講述了php實(shí)現(xiàn)根據(jù)字符串生成對應(yīng)數(shù)組的辦法,是比較實(shí)用的技巧.分享給大家供大家參考.具體辦法如下:PHP學(xué)習(xí)
先看看如下示例:PHP學(xué)習(xí)
<?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學(xué)習(xí)
<?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學(xué)習(xí)
<?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é)果:PHP學(xué)習(xí)
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
)
)
)PHP學(xué)習(xí)
希望本文所述對大家PHP程序設(shè)計(jì)的學(xué)習(xí)有所贊助.PHP學(xué)習(xí)
維易PHP培訓(xùn)學(xué)院每天發(fā)布《PHP應(yīng)用:php實(shí)現(xiàn)根據(jù)字符串生成對應(yīng)數(shù)組的方法》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/14694.html