Zend_Config-Introduction.xml 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <sect1 id="zend.config.introduction">
  2. <title>مقدمة</title>
  3. <para>
  4. تم تصميم
  5. <code>Zend_Config</code>
  6. لتُبسّط عملية الوصول و أستخدام بيانات الأعدادات "configuration data"
  7. داخل التطبيقات , حيث توفرالوصول إلى هذه البيانات بنفس الطريقة المتبعة
  8. لقرائة قيمة
  9. property فى أى كائن PHP عادى,
  10. و يمكن أن تأتى هذه البيانات من عدّة وسائط حفظ بيانات تدعم جفظ البيانات
  11. بهيكلة هرمية,
  12. فحالياً توفر
  13. <code>Zend_Config</code>
  14. ادوات لقرائة انواع من البيانات المحفوظة فى ملفات نصية و هى
  15. <link linkend="zend.config.adapters.ini">
  16. <code>Zend_Config_Ini</code>
  17. </link>
  18. و
  19. <link linkend="zend.config.adapters.xml">
  20. <code>Zend_Config_Xml</code>
  21. </link>
  22. .
  23. </para>
  24. <example>
  25. <title>إستخدام Zend_Config Per Se</title>
  26. <para>
  27. من الطبيعى توقع أن المبرمجين سيستخدمون أحد الـ adapter classes أو الـ
  28. "classes التوفيقية" مثل
  29. <link linkend="zend.config.adapters.ini">
  30. <code>Zend_Config_Ini</code>
  31. </link>
  32. أو
  33. <link linkend="zend.config.adapters.xml">
  34. <code>Zend_Config_Xml</code>
  35. </link>
  36. ,
  37. لكن إن كانت بيانات الأعدادات متوفرة فى مصفوفة PHP عادية, يمكن تمرير هذه
  38. البيانات إلى
  39. <code>Zend_Config</code>
  40. فى الـ constructor , و ذلك يفضل لتغليف البيانات داخل
  41. واجهة كأنية.
  42. </para>
  43. <programlisting role="php"><![CDATA[<?php
  44. // Given an array of configuration data
  45. $configArray = array(
  46. 'webhost' => 'www.example.com',
  47. 'database' => array(
  48. 'type' => 'pdo_mysql',
  49. 'host' => 'db.example.com',
  50. 'username' => 'dbuser',
  51. 'password' => 'secret',
  52. 'name' => 'dbname'
  53. )
  54. );
  55. // Create the object-oriented wrapper upon the configuration data
  56. require_once 'Zend/Config.php';
  57. $config = new Zend_Config($configArray);
  58. // Print a configuration datum (results in 'www.example.com')
  59. echo $config->webhost;
  60. // Use the configuration data to connect to the database
  61. $myApplicationObject->databaseConnect($config->database->type,
  62. $config->database->host,
  63. $config->database->username,
  64. $config->database->password,
  65. $config->database->name);]]></programlisting>
  66. </example>
  67. <para>
  68. كما هو موضح فى المثال السابق ,
  69. <code>Zend_Config</code>
  70. توفر امكانية الوصول إلى البيانات
  71. الممرة إليه بنفس الطريقة المتبعة لقرائة قيم property من أى كائن PHP عادى.
  72. </para>
  73. </sect1>
  74. <!-- vim:se ts=4 sw=4 et: -->