Zend_Application-AvailableResources-Session.xml 4.3 KB

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