Zend_Application-AvailableResources-Db.xml 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 20763 -->
  3. <!-- Reviewed: no -->
  4. <sect2 id="zend.application.available-resources.db">
  5. <title>Zend_Application_Resource_Db</title>
  6. <para>
  7. <classname>Zend_Application_Resource_Db</classname> initialisera un adaptateur
  8. <classname>Zend_Db</classname> basé sur les options qui lui seront fournis. Par
  9. défaut, il spécifiera aussi cet adaptateur comme adaptateur par défaut à utiliser
  10. avec <classname>Zend_Db_Table</classname>. Si vous souhaitez utiliser simultanément
  11. de multiples bases de données, vous pouvez utiliser la <link
  12. linkend="zend.application.available-resources.multidb">plugin de ressource Multidb</link>.
  13. </para>
  14. <para>
  15. Les clés de configuration suivantes sont reconnues&#160;:
  16. </para>
  17. <itemizedlist>
  18. <listitem><para>
  19. <emphasis><property>adapter</property></emphasis>&#160;: le type de l'adaptateur
  20. <classname>Zend_Db</classname>.
  21. </para></listitem>
  22. <listitem><para>
  23. <emphasis><property>params</property></emphasis>&#160;: un tableau associatif des
  24. paramètres de configuration à utiliser pour la récupération de l'instance de
  25. l'adaptateur.
  26. </para></listitem>
  27. <listitem><para>
  28. <emphasis><property>isDefaultTableAdapter</property></emphasis>&#160;: spécifie
  29. si l'adaptateur est celui par défaut des tables.
  30. </para></listitem>
  31. <listitem><para>
  32. <emphasis><property>defaultMetadataCache</property></emphasis>: spécifie
  33. le nom d'un modèle du gestionnaire de cache ou l'objet de cache pour les méta-données
  34. pour toutes les tables.
  35. </para></listitem>
  36. </itemizedlist>
  37. <example id="zend.application.available-resources.db.configExample">
  38. <title>Exemple de configuration d'une ressource d'adaptateur de base données</title>
  39. <para>
  40. Voici un exmple de configuration <acronym>INI</acronym> qui peut-être utilisé pour
  41. initialiser une ressource de base de données.
  42. </para>
  43. <programlisting language="ini"><![CDATA[
  44. [production]
  45. resources.db.adapter = "pdo_mysql"
  46. resources.db.params.host = "localhost"
  47. resources.db.params.username = "webuser"
  48. resources.db.params.password = "XXXXXXX"
  49. resources.db.params.dbname = "test"
  50. resources.db.isDefaultTableAdapter = true
  51. ; Optionnellement, on peut utiliser un modèle du gestionnaire de cache:
  52. resources.db.defaultMetadataCache = "database"
  53. ]]></programlisting>
  54. </example>
  55. <note>
  56. <title>Récupération de l'instance de l'adaptateur</title>
  57. <para>
  58. Si vous choisissez de ne pas utiliser l'adaptateur instancié avec cette ressource
  59. comme adaptateur par défaut pour les tables, comment pourrez-vous récupérer
  60. l'instance&#160;?
  61. </para>
  62. <para>
  63. Comme tout plugin de ressource, vous pouvez extraire votre plugin de ressource de votre
  64. fichier d'initialisation&#160;:
  65. </para>
  66. <programlisting language="php"><![CDATA[
  67. $resource = $bootstrap->getPluginResource('db');
  68. ]]></programlisting>
  69. <para>
  70. Une fois que vous avez l'objet ressource, vous pouvez récupérer l'adaptateur de base de
  71. données en utilisant la méthode <methodname>getDbAdapter()</methodname>&#160;:
  72. </para>
  73. <programlisting language="php"><![CDATA[
  74. $db = $resource->getDbAdapter();
  75. ]]></programlisting>
  76. </note>
  77. </sect2>