توابع parse_ini_file() در PHP
تعریف و استفاده
توابع parse_ini_file() یک فایل پیکربندی را تحلیل کرده و تنظیمات آن را به صورت آرایه بازمیگرداند.
نحوه استفاده
parse_ini_file(file,process_sections)
پارامترها | توضیحات |
---|---|
file | ضروری. فایل ini که باید بررسی شود را تعیین میکند. |
process_sections | اختیاری. اگر به true تنظیم شود، یک آرایه چند بعدی بازمیگرداند که شامل نامهای بخش و تنظیمات فایل پیکربندی است. پیشفرض false است. |
توضیحات
ساختار فایل ini مشابه php.ini است.
همچنین میتوانند به عنوان مقدارهای ثابت در فایل ini تفسیر شوند، بنابراین اگر مقدار ثابتهایی به عنوان مقدارهای ini قبل از اجرای parse_ini_file() تعریف شده باشند، به نتایج نهایی اضافه خواهند شد. فقط مقدارهای ini محاسبه میشوند.
نامهای کلید و بخشهای که از اعداد تشکیل شدهاند، توسط PHP به عنوان اعداد صحیح در نظر گرفته میشوند، بنابراین اعداد که با 0 شروع میشوند به عنوان اکثریت و اعداد که با 0x شروع میشوند به عنوان شانزدهسانی در نظر گرفته میشوند.
توضیحات و کامنتها
Note:این تابع میتواند برای خواندن فایلهای پیکربندی برنامه خود استفاده شود. این تابع با فایل php.ini هیچ ارتباطی ندارد، زیرا این فایل در زمان اجرای اسکریپت پردازش شده است.
Note:If the value in the ini file contains any non-alphanumeric characters, it must be enclosed in double quotes (").
Note:Some reserved words cannot be used as key names in ini files, including: null, yes, no, true and false. Values of null, no and false are equivalent to "", and values of yes and true are equivalent to "1". Characters {}|"~![()" cannot be used anywhere in the key name, and these characters have special meanings in option values.
Note:Starting from PHP 5.0 version, this function also handles new lines within option values.
Example
Example 1
The content of "test.ini":
[names] me = Robert you = Peter [urls] first = "http://www.example.com" second = "http://www.codew3c.com"
PHP Code:
<?php print_r(parse_ini_file("test.ini")); ?>
Output:
Array ( [me] => Robert [you] => Peter [first] => http://www.example.com [second] => http://www.codew3c.com )
Example 2
The content of "test.ini":
[names] me = Robert you = Peter [urls] first = "http://www.example.com" second = "http://www.codew3c.com"
PHP Code (process_sections Set to true):
<?php print_r(parse_ini_file("test.ini",true)); ?>
Output:
Array ( [names] => Array ( [me] => Robert [you] => Peter ) [urls] => Array ( [first] => http://www.example.com [second] => http://www.codew3c.com ) )