php解析ini,conf文件
/** * 解析conf文件,类似ini文件 * @param string $strFileName 文件名 * @param boolean $boolParseVal 解析值为数组,多 * @author mengdj * @date 2017.06.07 */ function parse_conf($strFileName,$boolParseVal=false){ $arrRet=array(); if(file_exists($strFileName)){ //装入文件数组 $arrLoad=file($strFileName); foreach($arrLoad as $k=>$v){ $arrLoad[$k]=trim($v); } //解析多余空格 $arrLoad=preg_replace('/[[:space:]]+/','',$arrLoad); //解析#号注释 $arrLoad=preg_replace('/#.*/','',$arrLoad); foreach($arrLoad as $val) { if(strpos($val,'#')===false&&strpos($val,'=')!==false){ $_array=explode('=',$val); if($_array[0]&&$_array[1]){ $arrRet[$_array[0]]=$boolParseVal?array_filter(explode(",",$_array[1])):$_array[1]; } } } } return $arrRet; }
a=1,2,3,4,
b=2