Zend Framework の紹介

 Learning Zend Framework

appendix

 Zend Framework リファレンス


  • 第36章 Zend_Gdata
  • 第37章 Zend_Http
  • 第38章 Zend_InfoCard
  • 第39章 Zend_Json
  • 第40章 Zend_Layout
  • 第41章 Zend_Ldap
  • 第42章 Zend_Loader
  • 第43章 Zend_Locale
  • 第44章 Zend_Log
  • 第45章 Zend_Mail
  • 第46章 Zend_Markup
  • 第47章 Zend_Measure
  • 第48章 Zend_Memory
  • 第49章 Zend_Mime
  • 第50章 Zend_Navigation
  • 第51章 Zend_Oauth
  • 第52章 Zend_OpenId
  • 第53章 Zend_Paginator
  • 第54章 Zend_Pdf
  • 第55章 Zend_ProgressBar
  • 第56章 Zend_Queue
  • 第57章 Zend_Reflection
  • 第58章 Zend_Registry
  • 第59章 Zend_Rest

  • 第60章 Zend_Search_Lucene
  • 第61章 Zend_Serializer
  • 第62章 Zend_Server
  • 第63章 Zend_Service
  • 第64章 Zend_Session
  • 第65章 Zend_Soap
  • 第66章 Zend_Tag
  • 第67章 Zend_Test
  • 第68章 Zend_Text
  • 第69章 Zend_TimeSync
  • 第70章 Zend_Tool
  • 第71章 Zend_Tool_Framework
  • 第72章 Zend_Tool_Project
  • 第73章 Zend_Translate
  • 第74章 Zend_Uri
  • 第75章 Zend_Validate
  • 第76章 Zend_Version
  • 第77章 Zend_View
  • 第78章 Zend_Wildfire
  • 第79章 Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Translation 70.6% Update 2010-11-28 - Revision 23415

    第23章 Zend_Console_Getopt

    23.1. 導入

    Zend_Console_Getopt クラスは、 コマンドラインアプリケーションでのオプションや引数の処理を助けるものです。

    ユーザは、アプリケーションを実行する際にコマンドライン引数を指定できます。 これらの引数はアプリケーションにとって何らかの意味を持つものであり、 何らかの振る舞いを変更したりリソースを選択したり、パラメータを設定したりします。 多くのオプションには、慣例となっている意味があります。 たとえば --verbose は、多くのアプリケーションで 出力内容をさらに追加します。 その他のオプションには、アプリケーションによって意味が異なるものもあります。 たとえば -c は、 grepls および tar でそれぞれ違う機能を表します。

    以下で用語の定義をします。これらの用語はいろいろな意味で用いられますが、 このドキュメントでは、ここで定義した意味で使用します。

    • "引数 (argument)": コマンドラインで、コマンド名の後にあらわれる文字列。 引数には、オプションが付くこともありますし 付かないこともあります。引数により、 コマンドの操作対象となるリソースを指定します。

    • "オプション (option)": 引数のうち、そのコマンドのデフォルトの振る舞いを 何らかの方法で変更するもの。

    • "フラグ (flag)": オプションの最初の部分で、 そのオプションの目的を表すもの。フラグの前には、 慣習的にひとつあるいはふたつのダッシュ (- あるいは --) をつけることになっています。 ひとつのダッシュをつけるのは、 一文字のフラグかあるいは一文字フラグのクラスタの場合です。 ふたつのダッシュをつけるのは複数文字からなるフラグの場合です。 長い形式のフラグはクラスタ化できません。

    • "パラメータ (parameter)": オプションの二番目の部分で、 フラグとともに使用するデータの値を指定します。 これは、オプションがそれを受け付ける場合に限ります。 たとえば、多くのコマンドは --verbose オプションを受け付けますが、 このオプションには一般的にパラメータを指定しません。 しかし、--user のようなオプションは、 たいていの場合はその後にパラメータが必要です。

      パラメータはフラグ引数の後で別の引数として指定することもできますし、 あるいは同一の引数文字列の一部として指定することもできます。 この場合は、フラグとパラメータを等号 (=) で連結します。 後者の形式は、長いフラグでのみサポートしています。 たとえば、 -u username--user username あるいは --user=username といった形式を Zend_Console_Getopt でサポートしています。

    • "クラスタ (cluster)": 複数の一文字のフラグを組み合わせ、 ひとつのダッシュの後に文字列としてつなげたもの。 たとえば "ls -1str" は四つのフラグのクラスタを使用しています。 このコマンドは "ls -1 -s -t -r" と同等です。クラスタ化できるのは一文字のフラグだけで、 長い形式のフラグはクラスタ化できません。

    たとえば mysql --user=root mydatabase において、 mysqlコマンド--user=rootオプション--userフラグroot はオプションに対する パラメータ となります。また mydatabase は、 この定義によると引数ですがオプションではありません。

    Zend_Console_Getopt が提供するインターフェイスには、 「アプリケーションで使用可能なフラグの宣言」 「無効なフラグが指定された場合のエラー表示および使用法の表示」 「ユーザが指定したフラグのアプリケーションへの通知」 などがあります。

    [注意] Getopt はアプリケーションフレームワークではありません

    Zend_Console_Getopt はdoes フラグやパラメータの意味を解釈するわけ ではなく、 またアプリケーションのワークフローを実装したりコードを起動したりするものでもありません。 それらの処理については、アプリケーション内で自分で実装しなければなりません。 Zend_Console_Getopt クラスを使用すると、 コマンドラインをパースし、ユーザが指定したオプションを オブジェクト指向のメソッドで取得できるようになります。 しかし、その情報をもとにアプリケーションで何らかの処理を行うのは別の PHP クラスの仕事です。

    これ以降の節で、Zend_Console_Getopt の使用法を説明します。

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...