Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。フォーム要素の作成」では、Zend_Formのインスタンスを作成した後、addElementメソッドを利用してフォーム要素を作成・設定・追加していました。大きなフォームを扱う場合など、このようなコードが長く続くとコード全体の見通しが悪くなります。そこで、Zend_Formでは設定ファイルを利用してフォームを作成することができます。これには、まずZend_Configで設定を読み込みます。ここでは設定ファイルにXMLファイルを利用した例を見てみます。</configTest></configdata>この設定ファイルではconfigdataがルートとなっており、その子にconfigTestが、孫にcodezineがあります。このうち、まずconfigdataが、この部分がZend_Configに読み込まれるべき設定であることを表しています。次のconfigTestとcodezineは自由につけて良い部分で、configTestが今回利用する設定を、codezineがフォームの設定が書いている場所となっています。Zend_Form($config->codezine);その後に続くactionとmethodはZend_FormのsetActionとsetMethodに対応するものです。フォーム要素に対応する記述はelementsの下に置きます。</options></フォーム要素名>これを表示したものは次のようになっています。Zend_Configを利用したZend_Formの作成Zend_Configには、この他にINI形式で書かれた設定を読み込むためのZend_Config_Iniがあります。Submitこちらも同様に、まず先頭に設定のセクション名(configTest)を記述します。区切って、階層構造にした設定内容を記述します。Zend_Configここでは詳細に触れませんが、Zend_Configは設定を管理するためのモジュールで、XML形式およびINI形式で書いてある設定ファイルを読み込むことができます。例では設定ファイルの位置を絶対パスで指定していますが、パスを省略した場合ではトップレベルのPHPが実行されているディレクトリを探します(この場合は「C:\codezine\htdocs」)。そのため、この場合では相対パス「..\zendapps\test.xml」で指定することもできます。今回のまとめ今回はZend_Formの利用方法を一通り触れてみました。Forms)と、Zend_Formの表示を変更する仕組み(Decorator)を中心に、今回紹介できなかったZend_Formの機能について解説する予定です。1.6.0に対応した機能もいくつか紹介できる予定です。NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Technologies。執筆コミュニティ「WINGSプロジェクト」代表。