很多時間我們需要把php產生的php代碼儲存到php檔案裡面,像如果利用到緩衝時一些基礎資料就直接儲存到了一個指定的php快取檔案了,下面我們來看看執行個體。
| 代碼如下 |
複製代碼 |
function cacheArr(&$data){ if(!$data)throw new Exception('數組不可為空'); foreach($GLOBALS as $key=>$value){ $str=$GLOBALS[$key]; $GLOBALS[$key]='changed'; if(&$data=='changed'){ $strName=$key; break; } $GLOBALS[$key]=$str; } ob_clean(); ob_start(); echo "function echoArr($arr,$arrName){ $arrCount=count($arr);$i==0; foreach($arr as $key=>$value){ ++$i; if(is_array($value)){ echo "n".(is_numeric($key)?$key:'''.$key.''').'=>array('; echoArr($value,$arrName.(is_numeric($key)?'['.$key.']':'[''.$key.'']')); if($i!=$arrCount)echo '),'; else echo ')'; continue; } if($i!=$arrCount)echo ((is_numeric($key))?$key:'''.$key.''').'=>'.(is_numeric($value)?$value:'''.$value.''').','; else echo ((is_numeric($key))?$key:'''.$key.''').'=>'.(is_numeric($value)?$value:'''.$value.'''); } } echo '$'.$strName.'=array('; echoArr($data,''); echo ');'; echo "n?>"; $file=fopen($strName.'.arr.php','w'); fwrite($file,ob_get_contents()); fclose($file); ob_clean(); return true; } ?> |
執行個體
| 代碼如下 |
複製代碼 |
//儲存數組 $hello=array(1=>'test',2=>array('hello123')); cacheArr($hello); unset($hello); //讀取數組 require 'hello.arr.php'; print_r($hello); ?>
|
http://www.bkjia.com/PHPjc/631651.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631651.htmlTechArticle很多時間我們需要把php產生的php代碼儲存到php檔案裡面,像如果利用到緩衝時一些基礎資料就直接儲存到了一個指定的php快取檔案了,下面...