Zend_Application-AvailableResources-Session.xml 4.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 24249 -->
  4. <sect2 id="zend.application.available-resources.session">
  5. <title>Zend_Application_Resource_Session(日本語)</title>
  6. <para>
  7. <classname>Zend_Application_Resource_Session</classname>
  8. によって、任意にセッションSaveHandlerを初期化するだけでなく、
  9. <classname>Zend_Session</classname>を構成できます。
  10. </para>
  11. <para>
  12. セッション保存ハンドラを配置するためには、
  13. 単にリソースの<property>saveHandler</property>オプション・キーを渡してください。
  14. (大文字と小文字の区別をしません)
  15. このオプションの値は、以下のうちの1つでしょう:
  16. </para>
  17. <itemizedlist>
  18. <listitem>
  19. <para>
  20. <type>String</type>:
  21. インスタンス化されるべき<classname>Zend_Session_SaveHandler_Interface</classname>を
  22. 実装するクラスを示す文字列
  23. </para>
  24. </listitem>
  25. <listitem>
  26. <para>
  27. <type>Array</type>:
  28. インスタンス化されるべき<classname>Zend_Session_SaveHandler_Interface</classname>を実装しているクラスと
  29. そのコンストラクタに与えるオプションの配列を示す、
  30. "class" 及び、任意で "options"キーを持つ配列
  31. </para>
  32. </listitem>
  33. <listitem>
  34. <para>
  35. <classname>Zend_Session_SaveHandler_Interface</classname>:
  36. このインターフェースを実装するオブジェクト
  37. </para>
  38. </listitem>
  39. </itemizedlist>
  40. <para>
  41. 渡されたオプション・キーはいずれも、
  42. <classname>Zend_Session</classname>を構成するために、<methodname>Zend_Session::setOptions()</methodname>に渡されます。
  43. </para>
  44. <example id="zend.application.available-resources.session.configExample">
  45. <title>セッション・リソース構成サンプル</title>
  46. <para>
  47. 下記は、セッション・リソースを設定する方法を示す<acronym>INI</acronym>スニペット・サンプルです。
  48. <classname>Zend_Session_SaveHandler_DbTable</classname>インスタンスを構成するだけではなく、
  49. <classname>Zend_Session</classname>オプションをいくつか設定します。
  50. </para>
  51. <programlisting language="ini"><![CDATA[
  52. resources.session.save_path = APPLICATION_PATH "/../data/session"
  53. resources.session.use_only_cookies = true
  54. resources.session.remember_me_seconds = 864000
  55. resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
  56. resources.session.saveHandler.options.name = "session"
  57. resources.session.saveHandler.options.primary[] = "session_id"
  58. resources.session.saveHandler.options.primary[] = "save_path"
  59. resources.session.saveHandler.options.primary[] = "name"
  60. resources.session.saveHandler.options.primaryAssignment[] = "sessionId"
  61. resources.session.saveHandler.options.primaryAssignment[] = "sessionSavePath"
  62. resources.session.saveHandler.options.primaryAssignment[] = "sessionName"
  63. resources.session.saveHandler.options.modifiedColumn = "modified"
  64. resources.session.saveHandler.options.dataColumn = "session_data"
  65. resources.session.saveHandler.options.lifetimeColumn = "lifetime"
  66. ]]></programlisting>
  67. </example>
  68. <note>
  69. <title>最初にデータベースを起動してください!</title>
  70. <para>
  71. もし<classname>Zend_Session_SaveHandler_DbTable</classname>セッション保存ハンドラを構成しているなら、
  72. それが機能するためのデータベース接続を最初に構成しなければなりません。
  73. いずれでも、<link
  74. linkend="zend.application.available-resources.db">Db</link>リソースを用いてこれを実行してください。
  75. "<property>resources.db</property>" キーが "<property>resources.session</property>" キーよりも優先されることを確認してください。
  76. あるいは、データベースを初期化するあなた自身のリソースを書くことによって。
  77. そして、特にデフォルト<classname>Zend_Db_Table</classname>アダプタを設定します。
  78. </para>
  79. </note>
  80. </sect2>