آموزش ایجاد فایل ini در php :
<?php
//@URL http://stackoverflow.com/questions/1268378/create-ini-file-write-values-in-php?answertab=votes#answer-1268642
function write_ini_file($assoc_arr, $path, $has_sections = FALSE)
{
    $content = "";
    if ($has_sections) {
        foreach ($assoc_arr as $key => $elem) {
            $content .= "[" . $key . "]\n";
            foreach ($elem as $key2 => $elem2) {
                if (is_array($elem2)) {
                    for ($i = 0; $i < count($elem2); $i++) {
                        $content .= $key2 . "[] = \"" . $elem2[$i] . "\"\n";
                    }
                } else if ($elem2 == "") $content .= $key2 . " = \n";
                else $content .= $key2 . " = \"" . $elem2 . "\"\n";
            }
        }
    } else {
        foreach ($assoc_arr as $key => $elem) {
            if (is_array($elem)) {
                for ($i = 0; $i < count($elem); $i++) {
                    $content .= $key . "[] = \"" . $elem[$i] . "\"\n";
                }
            } else if ($elem == "") $content .= $key . " = \n";
            else $content .= $key . " = \"" . $elem . "\"\n";
        }
    }
    if (!$handle = fopen($path, 'w')) {
        return false;
    }
    $success = fwrite($handle, $content);
    fclose($handle);
    return $success;
}
// write your array now in a .ini file
$sampleData = array(
    'first' => array(
        'first-1' => 1,
        'first-2' => 2,
        'first-3' => 3,
        'first-4' => 4,
        'first-5' => 5,
    ),
    'second' => array(
        'second-1' => 1,
        'second-2' => 2,
        'second-3' => 3,
        'second-4' => 4,
        'second-5' => 5,
    ));
write_ini_file($sampleData, './data.ini', true);
 
خواند فایل ini در php :
آموزش رو با مثال دنبال کنید :
در مسیر  C:\xampp\htdocs\ini فایلی به اسم sample.ini با محتوای زیر ایجاد کن :
[Cars]
var1 = 1
var2 = 2
حالا فایلی به نام index.php با محتوای زیر ایجاد کن :
<?php
// Parse without sections
$ini_array = parse_ini_file("sample.ini");
print_r($ini_array);
// Parse with sections
$ini_array = parse_ini_file("sample.ini", true);
print_r($ini_array);
?>
 
حالا با مرورگر fireFox اینو اجرا بگیر :
http://localhost/ini/
خودش index.php رو اجرا می کنه و خروجی میشه چیزی شبیه این :
Array ( [var1] => 1 [var2] => 2 ) Array ( [Cars] => Array ( [var1] => 1 [var2] => 2 ) )
منبع :
اگه خونه ی اول آرایه رو هم بخوای تکی بدست بیاری :
echo($ini_array["var1"]); 
خروجی: 1
-------
اطلاعات بیشتر بر گرفته از پرومیکرز:
تجزیه یک فایل ini
parse_ini_file
parse_ini_file — تجزیه یک فایل ini
شرح
کد PHP:
array parse_ini_file ( string $filename [, bool $process_sections = false [, int $scanner_mode = INI_SCANNER_NORMAL ]] ) 
 
این تابع همه ی اطلاعات یک فایل ini را به صورت یک آرایه ی بر می گرداند .
پارامتر ها
filename
فایل ini ای که می خواهید آنرا تجزیه و تحلیل کنید .
process_sections
اگر مقدار این پارامتر را برابر 
true قرار
 دهید یک آرایه ی چند بعدی بر می گرداند با نام section ها ( بخش هایی که 
در [] هستند ) و setting ( داده ها ) مقدار این پارامتر به صورت پیش فرض 
برابر 
false  است .
scanner_mode
دو مقدار 
INI_SCANNER_NORMAL و 
INI_SCANNER_RAW را می تواند داشته باشد .
 
INI_SCANNER_NORMAL  مقدار پیش فرض است 
اگر  
INI_SCANNER_RAW انتخاب شود مقدار ها( ارزش های متغیر ها ) تجزیه نخواهند شد  .
برگرداندن مقدار ها
یک آرایه ی چند بعدی را در صورت موفقیت بر می گرداند اگر موفق نباشد مقدار 
false بر گردانده می شود .
یک مثال
فایل زیر را با نام sample.ini در نظر بگیرید :
; This is a sample configuration file
; Comments start with ';', as in php.ini
[first_section]
one = 1
five = 5
animal = BIRD
[second_section]
path = "/usr/local/bin"
URL = "http://www.example.com/~username"
[third_section]
phpversion[] = "5.0"
phpversion[] = "5.1"
phpversion[] = "5.2"
phpversion[] = "5.3"
در فایل php زیر می خواهیم فایل را تجزیه کنیم:
<?php
define('BIRD', 'Dodo bird');
// Parse without sections
$ini_array = parse_ini_file("sample.ini");
print_r($ini_array);
// Parse with sections
$ini_array = parse_ini_file("sample.ini", true);
print_r($ini_array);
?>
*** define تا اونجایی که من می دونم یک ثابت ایجاد می کنه الان ما یک ثابت
 ایجاد کردیم با اسم BIRD و مقدارش رو برابر Dodo bird قرار دادیم
ثابت ها بر خلاف متغیر های برای فراخونیشون نیاز به $ نیست و فقط اسمش رو بنویسیم فراخوانی می شن
برای مثال 
echo BIRD;
خروجی این کد چیزی شبیه به این میشه:
Array
(
    [one] => 1
    [five] => 5
    [animal] => Dodo bird
    [path] => /usr/local/bin
    [URL] => http://www.example.com/~username
    [phpversion] => Array
        (
            [0] => 5.0
            [1] => 5.1
            [2] => 5.2
            [3] => 5.3
        )
)
Array
(
    [first_section] => Array
        (
            [one] => 1
            [five] => 5
            [animal] => Dodo bird
        )
    [second_section] => Array
        (
            [path] => /usr/local/bin
            [URL] => http://www.example.com/~username
        )
    [third_section] => Array
        (
            [phpversion] => Array
                (
                    [0] => 5.0
                    [1] => 5.1
                    [2] => 5.2
                    [3] => 5.3
                )
        )
)
***همونطوری که می بینید  مقدار BIRD به جای Dodo bird هست 
منبع اصلی :
http://php.net/manual/en/function.parse-ini-file.php
http://www.promakers.ir/showthread.php?tid=8956&pid=98665#pid98665