دالة PHP parse_ini_file()
تعريف ووظيفة
يحلل دالة parse_ini_file() ملف التكوين ويعود إلى مجموعة تحتوي على الإعدادات الموجودة فيه.
النصاب
parse_ini_file(ملف,process_sections)
معامل | وصف |
---|---|
ملف | مطلوب. يحدد ملف ini الذي يجب فحصه. |
process_sections | اختياري. إذا تم تعيينه على true، فإنه يعود بمجموعة متعددة الأبعاد تحتوي على أسماء الأقسام والضبط في ملف التكوين. الافتراض هو false. |
شرح
يبدو بنية ملفات ini مثل بنية ملف php.ini.
يمكن أيضًا تحليل المعادلات في ملفات ini، لذا إذا تم تعريف المعادلات كقيم ini قبل تشغيل parse_ini_file()، سيتم دمجها في النتيجة. سيتم حساب قيم ini فقط.
سيأخذ PHP الأسماء المكونة من الأرقام والأقسام كأرقام، لذا سيتم التعامل مع الأرقام التي تبدأ بـ 0 كعدد ثمانيي، والأرقام التي تبدأ بـ 0x كعدد عشري.
الإشارات والتعليقات
ملاحظة:هذا الدالة يمكن استخدامها لقراءة ملف تكوين تطبيقك الخاص. هذه الدالة ليست مرتبطة بملف php.ini، الذي يتم معالجته بالفعل عند تشغيل السكربت.
ملاحظة:إذا كان يحتوي قيمة ملف ini على أي رمز غير ألفا-أمجائي، يجب حبسه بين علامات الهوامش (").
ملاحظة:لا يمكن استخدام بعض الكلمات المحفوظة كأسماء المفاتيح في ملفات ini، بما في ذلك: null،yes،no،true و false. يتم تساوي القيم null،no و false مع ""، ويتم تساوي القيم yes و true مع "1". لا يمكن استخدام الأحرف {}|"~![()" في أي مكان في اسم المفتاح، وتبتني هذه الأحرف معاني خاصة في القيم.
ملاحظة:من إصدار PHP 5.0، يعالج هذا الدالة أيضًا القيم الموجودة في الخيارات الجديدة للسطر الجديد.
مثال
مثال 1
محتوى "test.ini":
[names] me = Robert you = Peter [urls] first = "http://www.example.com" second = "http://www.codew3c.com"
كود PHP:
<?php print_r(parse_ini_file("test.ini")); ?>
الإخراج:
Array ( [me] => Robert [you] => Peter [first] => http://www.example.com [second] => http://www.codew3c.com )
مثال 2
محتوى "test.ini":
[names] me = Robert you = Peter [urls] first = "http://www.example.com" second = "http://www.codew3c.com"
كود PHP (process_sections إعدادها إلى true):
<?php print_r(parse_ini_file("test.ini",true)); ?>
الإخراج:
Array ( [names] => Array ( [me] => Robert [you] => Peter ) [urls] => Array ( [first] => http://www.example.com [second] => http://www.codew3c.com ) )