你这样的ini文件要用带true参数的parse_ini_file读出
得到的是一个二维数组形如:
array(
  'section1' => array ('name1' => value1, 'name2' => value2}),
  'section2' => array ('name1' => value1, 'name2' => value2}),
)写回去可以
foreach($array as $k=>$v) {
  if(is_array($v)) {
    fwrite($fp,"[$k]\n");
    foreach($v as $k1=>$v1)
      fwrite($fp,"$k1=$v1\n");
  }else
    fwrite($fp,"$k=$v\n");
}注意检查数组必须使用关联键,而不能用数字下标。否则将不能取回

解决方案 »

  1.   

    楼上果然是高手啊,我google到了更完整的代码:function write_ini_file($path, $assoc_arr, $has_sections=FALSE) {
           $content = "";       if ($has_sections) {
               foreach ($assoc_arr as $key=>$elem) {
                   $content .= "[".$key."]\n";
                   foreach ($elem as $key2=>$elem2) {
                       $content .= $key2." = ".$elem2."\n";
                   }
               }
           }
           else {
               foreach ($assoc_arr as $key=>$elem) {
                   $content .= $key." = ".$elem."\n";
               }
           }       if (!$handle = fopen($path, 'w')) {
               return false;
           }
           if (!fwrite($handle, $content)) {
               return false;
           }
           fclose($handle);
           return true;
       }