تحذير: تتناول هذه الصفحة واجهات برمجة التطبيقات القديمة من Google، أي Google Data APIs، وهي ذات صلة فقط بواجهات برمجة التطبيقات المدرَجة في دليل Google Data APIs، والتي تم استبدال العديد منها بواجهات برمجة تطبيقات أحدث. للحصول على معلومات حول واجهة برمجة تطبيقات جديدة معيّنة، يُرجى الاطّلاع على مستندات واجهة برمجة التطبيقات الجديدة. للحصول على معلومات عن تفويض الطلبات باستخدام واجهة برمجة تطبيقات أحدث، يُرجى الاطّلاع على مقالة المصادقة والتفويض في حسابات Google.
فيديو: شاهِد "تريفور جونز" وهو يشرح عملية تثبيت مكتبة برامج العميل وبنية المكتبة ويقدّم شرحًا تفصيليًا للرمز البرمجي.
تم التعديل في تشرين الأول (أكتوبر) 2008 (كتبه في الأصل دانيال هوليفوت)
- مقدمة
- التثبيت المُسبَق
- تثبيت PHP
- تثبيت مكتبة برامج Google Data PHP
- التحقّق من إمكانية الوصول إلى ملفات مكتبة البرامج
- مزيد من المعلومات
- الملحق أ: تعديل مسار PHP في ملف إعداد
php.ini
- الملحق (ب): استخدام PHP من سطر الأوامر
- الملحق ج: التلميحات والحلول
- سجلّ النُسخ السابقة
مقدمة
مكتبة برامج Google Data PHP Client Library هي مجموعة قوية من الفئات التي تتيح لك التفاعل مع Google Data APIs. على عكس مكتبات العملاء الأخرى، يتم تجميعها كجزء من Zend Framework الشائعة، ولكن يمكن أيضًا تنزيلها بشكل منفصل. وكما هو الحال مع مكتبات العملاء الأخرى، فإنّها مفتوحة المصدر ومصمَّمة لتكون بسيطة وفعّالة، ما يتيح لك البدء في مشاريعك بسرعة.
التثبيت المُسبَق
قد يكون PHP مثبَّتًا على جهاز التطوير أو خادم الويب، لذا فإنّ الخطوة الأولى هي التأكّد من ذلك والتأكّد من أنّ إصدار PHP حديث بما يكفي لاستخدامه في مكتبة البرامج. أسهل طريقة للتحقّق من ذلك هي وضع ملف جديد في دليل يمكن الوصول إليه على الويب على الخادم. اكتب المعلومات التالية في الملف:
<?php phpinfo(); ?>
بعد ذلك، تأكَّد من إمكانية الوصول إليه من الويب من خلال ضبط الأذونات المناسبة، وانتقِل إلى موقعه الجغرافي من داخل المتصفّح. إذا كانت لغة PHP مثبّتة وكان الخادم قادرًا على عرض صفحات PHP، من المفترض أن يظهر لك شيء مشابه للقطة الشاشة أدناه:

تعرض لقطة الشاشة صفحة معلومات PHP. تعرض لك هذه الصفحة إصدار PHP الذي تم تثبيته (5.2.6 في هذه الحالة)، بالإضافة إلى الإضافات التي تم تفعيلها (في قسم "ضبط الأمر") وموقع ملف الإعداد الداخلي لـ PHP (في قسم "ملف الإعداد الذي تم تحميله"). إذا لم يتم عرض الصفحة أو كان إصدار PHP أقدم من 5.1.4، عليك تثبيت إصدار PHP أو ترقيته. وإلا يمكنك تخطّي القسم التالي والمتابعة إلى تثبيت مكتبة برامج PHP.
ملاحظة: إذا كان بإمكانك الوصول إلى سطر الأوامر وكنت تخطّط لاستخدام PHP لتشغيل نصوص برمجية في سطر الأوامر، يُرجى الاطّلاع على قسم PHP في سطر الأوامر من هذه المقالة.
تثبيت PHP
يختلف التثبيت قليلاً حسب النظام الأساسي، لذا من المهم اتّباع التعليمات الخاصة بنظامك الأساسي أثناء التثبيت. قبل أن نبدأ، من الجدير بالذكر أنّ الحِزم المثبَّتة مسبقًا والتي تتضمّن أيضًا خادم الويب Apache وقاعدة بيانات MySQL بالإضافة إلى PHP قد اكتسبت شعبية كبيرة. بالنسبة إلى أنظمة التشغيل Windows وMac OS X وLinux، يتوفّر مشروع XAMPP. يمكن لمستخدمي Mac OS X أيضًا اختيار استخدام مشروع MAMP. تتيح كلتا الحزمتَين استخدام OpenSSL في PHP (وهو أمر ضروري للتفاعل مع الخلاصات التي تتطلّب مصادقة).
إذا كنت تثبّت PHP باستخدام الخطوات التالية أدناه، تأكَّد من تثبيت ميزة التوافق مع OpenSSL وتفعيلها أيضًا. يمكنك الاطّلاع على مزيد من التفاصيل حول ذلك في قسم OpenSSL من موقع PHP الإلكتروني. تركّز الأقسام التالية على كيفية تثبيت PHP بمفرده.
على أجهزة Windows
أسهل طريقة لتثبيت PHP أو ترقيتها على نظام التشغيل Windows هي استخدام أداة تثبيت PHP المتوفّرة في صفحة عمليات التنزيل على موقع PHP الإلكتروني.
- اختَر خيار أداة تثبيت PHP (في قسم ملفات Windows الثنائية) المتوافق مع أحدث إصدار من PHP واسمح بتنزيله.
- افتح أداة التثبيت واتّبِع تعليمات معالج التثبيت.
- عندما يطلب منك المعالج ذلك، اختَر خادم الويب المثبَّت على نظامك، وذلك لضبط إعدادات الخادم للعمل مع PHP.
- تحقَّق من عملية التثبيت باتّباع الخطوات الموضّحة في القسم أعلاه.
على نظام التشغيل Mac OS X
يتم تضمين PHP في نظام التشغيل OS X، ولكن قبل استخدامه، يجب الترقية إلى أحدث إصدار من PHP. لترقية الإصدار، يمكنك تثبيت أي من حِزم الرموز الثنائية المجانية المتعدّدة، أو تجميعها بنفسك. لمزيد من التفاصيل، يُرجى الاطّلاع على صفحة مستندات PHP حول التثبيت على نظام التشغيل Mac OS X.
بعد تثبيت نظام التشغيل OS X أو إعداده بأي طريقة أخرى، تحقَّق من عملية التثبيت باتّباع الخطوات الموضّحة في قسم ما قبل التثبيت من هذا المستند.
في نظام التشغيل Linux
اعتمادًا على توزيعة Linux، قد يتوفّر خيار إعداد مدمج أو سهل الاستخدام لتثبيت PHP. على سبيل المثال، في نظام التشغيل Ubuntu، يمكنك استخدام أداة لإدارة الحِزم أو كتابة ما يلي في الوحدة الطرفية:
sudo apt-get install php5
إذا لم يكن هناك تثبيت مجمَّع متاح مع توزيعة Linux، يجب التثبيت من رمز المصدر. تتوفّر تعليمات تفصيلية حول تجميع PHP لنظام Apache 1.3 وتجميع PHP لنظام Apache 2. يتضمّن موقع PHP.net أيضًا تعليمات للخوادم الأخرى.
تثبيت مكتبة عميل Google Data PHP
بعد تثبيت إصدار PHP يعمل، حان الوقت لتثبيت مكتبة العميل. مكتبة البرامج هي جزء من إطار عمل Zend مفتوح المصدر، ولكن يمكن أيضًا تنزيلها كإصدار مستقل. إذا كان لديك إصدار من Zend Framework مثبَّتًا (الإصدار 1.6 أو إصدار أحدث)، يمكنك تخطّي عملية التثبيت، لأنّ مكتبة Google Data Client Library مضمّنة. ومع ذلك، سيضمن لك استخدام أحدث إصدار من إطار العمل الحصول على جميع الميزات الجديدة وإصلاحات الأخطاء المتاحة، لذا يُنصح عادةً بذلك.
سيمنحك تنزيل الإطار الكامل إمكانية الوصول إلى "مكتبة عملاء بيانات Google" وبقية الإطار. تستخدم مكتبة البرامج نفسها بعض الفئات الأخرى التي تشكّل جزءًا من إطار عمل Zend الكامل، ولكن ليس من الضروري تنزيل إطار العمل بأكمله لأنّنا جمعناها في عملية التنزيل المستقلة.
- نزِّل ملفات مكتبة برامج Google Data. (ابحث في تلك الصفحة عن "Google Data APIs").
- فك ضغط الملفات التي تم تنزيلها يجب إنشاء أربعة أدلة فرعية:
demos
: تطبيقات نموذجيةdocumentation
: مستندات ملفات مكتبة البرامجlibrary
: ملفات المصدر الفعلية لمكتبة البرامج-
tests
: ملفات اختبار الوحدات لإجراء الاختبارات المبرمَجة
- أضِف موقع المجلد
library
إلى مسار PHP (راجِع القسم التالي).
التحقّق من إمكانية الوصول إلى ملفات مكتبة البرامج
الخطوة الأخيرة هي التأكّد من إمكانية الرجوع إلى ملفات مكتبة برامج PHP Client Library وتضمينها من الدليل الذي تنشئ فيه مشروعك. يتم ذلك من خلال ضبط المتغيّر include_path
في ملف إعداد PHP (php.ini
). يحتوي المتغيّر include_path
على عدد من مواقع الدليل التي يبحث فيها PHP عند إصدار عبارة require
أو include
التي تجلب فئات أو مكتبات أو ملفات خارجية إلى النص البرمجي الحالي، على غرار عبارة import
في Java. عليك إلحاق موقع ملفات مكتبة البرامج بما تم ضبطه مسبقًا في include_path
. يمكن تحقيق ذلك بطريقتَين (سيتم توضيح كلتا الطريقتَين بالتفصيل أدناه):
- اضبط توجيه
include_path
بشكل دائم في ملف الإعدادphp.ini
من سطر الأوامر، ويتطلّب ذلك إذن الوصول إلى shell وأذونات الكتابة. - اضبط متغيّر مسار
include_path
على مستوى "كل دليل"، ويتطلّب ذلك خادم الويب Apache وإمكانية إنشاء ملفات.htaccess
. - استخدِم الدالة
set_include_path()
لضبط مسار التضمين ديناميكيًا في النصوص البرمجية، ويمكن ضبطه ديناميكيًا في كل ملف من ملفات .php.
إذا كان لديك إذن وصول إلى shell وأذونات كتابة إلى ملف php.ini
(أو إذا كنت تكتب رمزًا على جهازك المحلي)، ما عليك سوى اتّباع التعليمات الواردة في الملحق أ. إذا كنت تستخدم خادم الويب Apache وكان بإمكانك إنشاء ملفات .htaccess، يمكنك ضبط المتغيّر include_path
على مستوى "كل دليل"، ما يعني أنّ جميع الملفات في الدليل الذي تعمل فيه ستتمكّن تلقائيًا من الرجوع إلى دليل مكتبة البرامج.
يمكنك تحديد خيارات إعداد PHP كما هو موضّح في المقتطف أدناه:
# This works for PHP5 in both Apache versions 1 and 2 <IfModule mod_php5.c> php_value include_path ".:/usr/local/lib/php:/path/to/ZendGdata/library" </IfModule>
ملاحظة: يُرجى الرجوع إلى دليل PHP لمزيد من المعلومات حول تغيير إعدادات الضبط.
إذا لم يكن لديك إذن الوصول إلى shell على الخادم وتعذّر عليك تعديل ملفات .htaccess أو إنشاؤها، يمكنك دائمًا استخدام الدالة set_include_path
. يُرجى العِلم أنّه قد تكون لديك بعض القيم المضبوطة لـ include_path
، لذا قد يكون من الأفضل اتّباع النموذج أدناه لإلحاق القيم الجديدة بدلاً من الكتابة فوق المسار بأكمله:
$clientLibraryPath = '/path/to/ZendGdata/library'; $oldPath = set_include_path(get_include_path() . PATH_SEPARATOR . $clientLibraryPath);
ملاحظة: يُرجى الرجوع إلى صفحات دليل PHP للحصول على مزيد من التفاصيل حول الدالة set_include_path
.
تشغيل أداة التحقّق من تثبيت PHP
للتحقّق من ضبط مسار التضمين بشكلٍ سليم، يمكنك تشغيل نص PHP البرمجي Installation Checker. ما عليك سوى نسخ محتوى هذا الملف ولصقه في ملف جديد في دليل يمكن الوصول إليه على الويب على خادمك، ثم الانتقال إليه من المتصفّح. إذا ظهرت لك نتيجة مشابهة لما يلي، يعني ذلك أنّه تم ضبط كل شيء بشكل صحيح وأنت مستعد لاستخدام مكتبة برامج PHP:

إذا ظهرت لك أخطاء (كما في لقطة الشاشة أدناه)، تأكَّد من اتّباع التوجيهات. قد تكون الإضافات غير متوفّرة أو قد لا يزال المسار غير مضبوط بشكلٍ صحيح. تذكَّر أنّه قد يلزمك إعادة تشغيل الخادم لتصبح التغييرات سارية. لا ينطبق ذلك إلا إذا كنت تعدّل ملف php.ini
. توضّح لقطة الشاشة أدناه أنّه تم ضبط include_path
على /path/to/nowhere
:

ملاحظة: يُرجى العِلم أنّ أداة التحقّق من تثبيت PHP تتحقّق من ما يلي بالتسلسل: (1) هل تم تثبيت إضافات PHP المطلوبة؟ (2) هل يشير include_path
إلى دليل مكتبة عميل PHP؟ (3) هل يمكن إجراء اتصالات SSL؟ وأخيرًا، هل يمكن إجراء اتصال بـ YouTube Data API؟ إذا تعذّر إجراء اختبار معيّن، لن يتم إجراء الاختبارات المتبقية.
بعد تثبيت مكتبة البرامج، حان الوقت لتجربة تشغيل النماذج.
تشغيل العيّنات
في جذر دليل Zend/Gdata
، يوجد مجلد خاص بالعروض التوضيحية، وهي عبارة عن نماذج لمساعدتك على البدء. تم تصميم بعض هذه النماذج ليتم تشغيلها من سطر الأوامر، مثل demos/Zend/Gdata/Blogger.php
وdemos/Zend/Gdata/Spreadsheet-ClientLogin.php
، ويمكنك تنفيذها باستخدام php /path/to/example
. يمكن تشغيل النماذج المتبقية من سطر الأوامر ومن متصفّح الويب. إذا أردت عرضها في متصفّح، يجب وضعها في أي دليل تستخدمه لعرض صفحات الويب. من المفترض أن تقدّم هذه النماذج فكرة أساسية عن كيفية كتابة تطبيق Google Data وتشغيله، ولكن عندما تكون مستعدًا للمزيد، تتوفّر مراجع أخرى للمبرمجين الفضوليين.
ملاحظة: إذا كنت مهتمًا بمشاهدة العروض التوضيحية المستندة إلى الويب على الإنترنت، يُرجى الانتقال إلى googlecodesamples.com والبحث عن تطبيقات PHP.
مزيد من المعلومات
أفضل مكان للبحث عن معلومات حول الفئات التي تشكّل جزءًا من مكتبة البرامج هو دليل مرجع واجهة برمجة التطبيقات على موقع Zend Framework. احرص على اختيار حزمة Zend_Gdata من القائمة المنسدلة.
في هذه المرحلة، من المفترض أن تكون جاهزًا لبدء الترميز. إذًا، هيا، اكتب بعض التطبيقات الرائعة. نتطلّع إلى رؤية نتائجك.
يمكنك العثور على أدلة مطوّري PHP للخدمات التالية:
بما أنّ "مكتبة برامج PHP" هي مشروع مفتوح المصدر، تتم إضافة دعم المزيد من واجهات برمجة التطبيقات باستمرار. لكل خدمة فريق دعم خاص بها، يُرجى الاطّلاع على إدخال الأسئلة الشائعة للحصول على قائمة بفِرق الدعم المتاحة.
إذا كنت بحاجة إلى مساعدة في تحديد المشاكل وحلّها في طلبات واجهة برمجة التطبيقات، تتوفّر مقالات حول تصحيح أخطاء طلبات واجهة برمجة التطبيقات باستخدام أدوات تسجيل عدد الزيارات على الشبكة وحول استخدام خوادم وكيل مع Google Data APIs. تتوفّر أيضًا بعض المقالات الخارجية حول تثبيت XAMPP على Linux وتثبيت XAMPP على Windows. بالإضافة إلى كل هذه المقالات، احرص على الاطّلاع على المشاركات حول مكتبة برامج PHP على مدونة "نصائح حول Google Data API".
الملحق (أ): تعديل مسار PHP في ملف إعداد php.ini
مسار PHP هو متغيّر يحتوي على قائمة بالمواقع الجغرافية التي يبحث فيها PHP عند البحث عن مكتبات إضافية أثناء التحميل. لكي يتمكّن PHP من تحميل ملفات مكتبة برامج Google Data PHP Client Library والوصول إليها على جهازك أو خادمك، يجب وضعها في مكان يعرفه PHP. أو بدلاً من ذلك، يجب إلحاق موقع الملفات بمسار PHP. يُرجى العِلم أنّ التغييرات التي يتم إجراؤها على ملف php.ini
تتطلّب عادةً إعادة تشغيل الخادم. يمكنك في أي وقت التحقّق من القيمة الحالية للمتغيّر include_path
من خلال الانتقال إلى صفحة معلومات PHP الموضّحة سابقًا. ابحث عن الخلية ملف الإعداد الذي تم تحميله في الجدول الأول وابحث عن المسار في العمود على اليسار.
ملاحظة: إذا تبيّن لك أنّك تستخدم php من سطر الأوامر، قد تحتاج إلى تعديل متغيّر مسار إضافي. احرص على مراجعة الملحق ب: استخدام PHP من سطر الأوامر.
بعد العثور على ملف php.ini
، اتّبِع الخطوات التالية لإلحاقه بالمسار.
- افتح ملف
php.ini
في محرِّر النصوص المفضّل لديك. - ابحث عن السطر الذي يشير إلى مسار PHP، يجب أن يبدأ بـ
include_path
. - أضِف المسار الذي خزّنت فيه Zend Framework إلى قائمة المواقع الجغرافية المتوفّرة حاليًا، مع إضافة الفاصل المحدّد لنظام التشغيل (
:
على الأنظمة الشبيهة بنظام Unix و;
على نظام التشغيل Windows) قبل المسار الجديد. سيبدو المسار الصحيح على الأنظمة المشابهة لنظام التشغيل Unix على النحو التالي: على أجهزة Windows، سيبدو على النحو التالي:/path1:/path2:/usr/local/lib/php/library
\path1;\path2;\php\library
- احفظ الملف ثم أغلقه.
ملاحظة: في نظام التشغيل Mac OS X، لا يسمح Finder بالوصول إلى الملفات الموجودة في مواقع النظام، مثل الدليل /etc
. لذلك، قد يكون من الأسهل تعديلها باستخدام محرّر سطر أوامر، مثل vi
أو pico
. لإجراء ذلك، استخدِم أمرًا مثل: pico /path/to/php.ini
.
الملحق ب: استخدام PHP من سطر الأوامر
اعتبارًا من الإصدار 5 من PHP، تتوفّر أداة سطر أوامر في PHP يُشار إليها باسم CLI لـ "مفسّر سطر الأوامر". يتيح استخدام هذه الأداة تشغيل نصوص PHP البرمجية من سطر الأوامر. قد يكون ذلك مفيدًا إذا كنت تستخدم PHP محليًا على جهازك وتبحث عن طرق لاختبار بعض النصوص البرمجية بسرعة. على الخادم بالطبع، وسيتطلب ذلك إذن الوصول إلى shell. من المهم ملاحظة أنّ لغة PHP تستخدم عادةً ملفَين منفصلَين من النوع php.ini
، أحدهما يحتوي على خيارات الإعداد لتشغيل PHP على الخادم، والآخر يحتوي على الإعدادات التي تستخدمها PHP عند التشغيل من سطر الأوامر. إذا كنت مهتمًا بتشغيل تطبيقات العرض التوضيحي لسطر الأوامر من مكتبة البرامج، عليك تعديل ملف php.ini
لسطر الأوامر أيضًا.
للعثور عليه، اكتب الأوامر التالية على أنظمة تشغيل شبيهة بنظام Unix (مثل Mac OS X وLinux وغيرها):
php -i | grep php.ini
من المفترض أن يؤدي هذا الأمر إلى عرض المعلومات التالية في الوحدة الطرفية:
Configuration File (php.ini) Path => /etc/php5/cli Loaded Configuration File => /etc/php5/cli/php.ini
ملاحظة: من الواضح أنّ مواقع المسارات الفعلية (/etc/php...
) قد تختلف على نظامك.
الملحق (ج): تلميحات وحلول
يحتوي هذا القسم على ملخّص موجز لبعض المشاكل التي اكتشفها المطوّرون عند العمل باستخدام PHP والحلول المناسبة لها.
مشكلة في إضافة dom-xml في XAMPP
تستخدم مكتبة برامج PHP فئات DOMDocument لتحويل طلبات XML واستجاباتها إلى عناصر PHP. يمكن أن يتسبّب الامتداد dom-xml
في حدوث مشاكل في معالجة XML ويؤدي إلى عمليات تحويل غير صحيحة. لاحظ بعض المطوّرين أنّه عند استخدام XAMPP، يتم استبدال أداة إنشاء DOMDocument باستدعاء دالة أقدم، كما هو موضّح على موقع PHP الإلكتروني. لحلّ هذه المشكلة، تأكَّد من عدم استبدال معالجة XML في ملف php.ini
. احرص على إزالة الإشارات إلى php_domxml.dll
من ملف الإعداد.
انتهاء مهلة الطلبات عند استخدام مكتبة برامج العميل
إذا كنت تستخدم مكتبة العميل لإجراء طلبات كبيرة إلى حدّ ما، مثل تحميل فيديوهات إلى YouTube Data API، قد تحتاج إلى تغيير المَعلمة timeout
في الفئة Zend_Http_Client
. يمكن إجراء ذلك بسهولة عن طريق تمرير المَعلمة $config
أثناء إنشاء مثيل، ما يؤدي إلى ضبط القيمة timeout
على قيمة أخرى غير القيمة التلقائية البالغة 10 ثوانٍ:
// assuming your Zend_Http_Client already exists as $httpClient // and that you want to change the timeout from the 10 second default to 30 seconds $config = array('timeout' => 30); $httpClient->setConfig($config);
لا يسمح بعض مقدّمي خدمات الاستضافة بإنشاء اتصالات https من خوادمهم
لقد علمنا أنّ بعض موفّري خدمات الاستضافة لا يسمحون بإجراء اتصالات https
من خوادمهم التلقائية. إذا ظهرت لك رسالة خطأ مشابهة لما يلي، قد تحتاج إلى إجراء اتصالات https من خلال خادم وكيل آمن:
Unable to Connect to sslv2://www.google.com:443. Error #110: Connection timed out
يجب أن يتوفّر لدى مقدّم خدمة الاستضافة معلومات عن العنوان الفعلي لخادم البروكسي الذي سيتم استخدامه. يوضّح المقتطف أدناه كيفية استخدام إعدادات خادم وكيل مخصّصة مع مكتبة PHP Client Library:
// Load the proxy adapter class in addition to the other required classes Zend_Loader::loadClass('Zend_Http_Client_Adapter_Proxy'); // Configure the proxy connection with your hostname and portnumber $config = array( 'adapter' => 'Zend_Http_Client_Adapter_Proxy', 'proxy_host' => 'your.proxy.server.net', 'proxy_port' => 3128 ); // A simple https request would be an attempt to authenticate via ClientLogin $proxiedHttpClient = new Zend_Http_Client('http://www.google.com:443', $config); $username = 'foo@example.com'; $password = 'barbaz'; // The service name would depend on what API you are interacting with, here // we are using the Google DocumentsList Data API $service = Zend_Gdata_Docs::AUTH_SERVICE_NAME; // Try to perform the ClientLogin authentication using our proxy client. // If there is an error, we exit since it doesn't make sense to go on. try { // Note that we are creating another Zend_Http_Client // by passing our proxied client into the constructor. $httpClient = Zend_Gdata_ClientLogin::getHttpClient( $username, $password, $service, $proxiedHttpClient); } catch (Zend_Gdata_App_HttpException $httpException) { // You may want to handle this differently in your application exit("An error occurred trying to connect to the proxy server\n" . $httpException->getMessage() . "\n"); }
سِجل النُسخ السابقة
1 أكتوبر 2008
تم التعديل من قِبل "يوهان هارتمان". يتضمّن هذا التحديث التغييرات التالية:
- تم توضيح إعدادات PHP لخوادم الويب من خلال نقل الأقسام التي تشير إلى PHP في سطر الأوامر إلى ملحق.
- تمت إضافة ملاحظة حول ملفات إعداد php.ini المتعددة.
- تمت إضافة أقسام حول كيفية ضبط include_path بشكلٍ ديناميكي.
- تمت إضافة قسم حول النص البرمجي لأداة التحقّق من التثبيت.
- تمت إضافة رابط إلى العيّنات المتوفّرة على الإنترنت.
- تمت إضافة روابط لـ XAMPP وMAMP.
- تمت إضافة ملحق "تلميحات وحلول".