PHP —— 讀取文件到二維數組

轉自:PHP讀取自定義ini文件到二維數組php

讀取文件,能夠使用file_get_contents,file,parse_ini_file等,如今有一個需求,須要讀取以下格式的文件:html

 1 [food]
 2 apple
 3 meat
 4 [tool]
 5 linux
 6 $
 7 $_GET[]
 8 `
 9 '
10 "
11 {
12 }
13 -
14 =
15 \
16 /
17 ?
18 
19 <\
20 .

這種格式相似ini文件,可是讀取的時候只能讀取到第一維度,第二維度讀不出數據,沒辦法,只能本身寫了linux

<?PHP

    function getArr( $file ){
        if(!file_exists( $file )){
            return false;//判斷文件是否存在
        }
        $res = array();
        $key = '';
        $arr = file( $file );
        foreach($arr as $value){
            $value = trim( $value );
            if( empty($value)){
                continue;//去除空行
            }
            if( preg_match( '/^\[(.+)\]$/', $value, $temp) ){
                $key = $temp[1];//肯定第一維度
                continue;
            }
            $res[$key][] = $value;//肯定第二維度
        }
        return $res;
    }
    print_r(getArr('config.ini'));//文本文件
    
?>

輸出結果:數組

 

 

 轉自:PHP讀取自定義ini文件到二維數組app

相關文章
相關標籤/搜索