Zend_Application-AvailableResources-Db.xml 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 24249 -->
  4. <sect2 id="zend.application.available-resources.db">
  5. <title>Zend_Application_Resource_Db(日本語)</title>
  6. <para>
  7. <classname>Zend_Application_Resource_Db</classname>は、
  8. それに渡されるオプションに基づいて<classname>Zend_Db</classname>アダプタを初期化します。
  9. デフォルトで、<classname>Zend_Db_Table</classname>用のデフォルト・アダプタとして、
  10. アダプタを設定します。
  11. 複数のデータベースを同時に利用したい場合、 <link
  12. linkend="zend.application.available-resources.multidb">Multidb リソース・プラグイン</link>
  13. を利用できます。
  14. </para>
  15. <para>
  16. 以下の構成キーが認識されます:
  17. </para>
  18. <itemizedlist>
  19. <listitem>
  20. <para>
  21. <emphasis><property>adapter</property></emphasis>: <classname>Zend_Db</classname>アダプタ・タイプ
  22. </para>
  23. </listitem>
  24. <listitem>
  25. <para>
  26. <emphasis><property>params</property></emphasis>: アダプタ・インスタンスを取得するときに使う構成パラメータの連想配列です。
  27. </para>
  28. </listitem>
  29. <listitem>
  30. <para>
  31. <emphasis><property>isDefaultTableAdapter</property></emphasis>: アダプタをデフォルト・テーブル・アダプタとして確立するべきかどうか。
  32. </para>
  33. </listitem>
  34. <listitem>
  35. <para>
  36. <emphasis><property>defaultMetadataCache</property></emphasis>:
  37. <classname>Zend_Db_Table</classname> 用にメタデータ・キャッシュとして使用する
  38. キャッシュ・テンプレートまたは <classname>Zend_Cache_Core</classname> のインスタンスの名前。
  39. </para>
  40. </listitem>
  41. </itemizedlist>
  42. <example id="zend.application.available-resources.db.configExample">
  43. <title>DBアダプタ・リソース構成サンプル</title>
  44. <para>
  45. 下記は、DBリソースを初期化するために使える<acronym>INI</acronym>構成サンプルです。
  46. </para>
  47. <programlisting language="ini"><![CDATA[
  48. [production]
  49. resources.db.adapter = "pdo_mysql"
  50. resources.db.params.host = "localhost"
  51. resources.db.params.username = "webuser"
  52. resources.db.params.password = "XXXXXXX"
  53. resources.db.params.dbname = "test"
  54. resources.db.isDefaultTableAdapter = true
  55. ; メタデータ・キャッシュ用に使用するキャッシュ・テンプレートも任意に(訳注:動詞不明)できます。
  56. resources.db.defaultMetadataCache = "database"
  57. ]]></programlisting>
  58. </example>
  59. <note>
  60. <title>アダプタのインスタンスを取得する</title>
  61. <para>
  62. このリソースでインスタンス化されるアダプタを
  63. デフォルト・テーブル・アダプタにしないことを選ぶなら、
  64. あなたはどうやってアダプタ・インスタンスを取得しますか?
  65. </para>
  66. <para>
  67. どんなリソース・プラグインでも、
  68. ブートストラップからDBリソース・プラグインを取ってくることができます:
  69. </para>
  70. <programlisting language="php"><![CDATA[
  71. $resource = $bootstrap->getPluginResource('db');
  72. ]]></programlisting>
  73. <para>
  74. 一旦リソースオブジェクトを所有するなら、
  75. <methodname>getDbAdapter()</methodname>メソッドを用いてDBアダプタを取ってくることができます:
  76. </para>
  77. <programlisting language="php"><![CDATA[
  78. $db = $resource->getDbAdapter();
  79. ]]></programlisting>
  80. </note>
  81. </sect2>