SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine(コードジン) DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Zend Framework入門

コマンドラインからのPHPアプリケーション管理
- Zend_Tool -

Zend Frameworkによる実践的なPHPアプリケーション開発 25

システム情報の取得

 ここで、いくつか標準で添付されているプロバイダのうち、システムの情報を表示する基本的なものを紹介します。なお、コマンドラインインターフェイスの構文は次のとおりです。

[構文]zf.bat
zf.bat (アクション名)(プロバイダ名) (アクションへの引数...)

 なお、UNIX(Linux)を利用する場合には「zf.bat」ではなく「zf.sh」を呼び出します。以下の記述でも適宜置き換えてください。

(1)Versionプロバイダ

 利用しているZend Frameworkのバージョンを表示します。

C:\>\ZendFramework-1.9.1\bin\zf.bat show version

 ▼

Zend Framework Version: 1.9.1

 なお、Versionプロバイダにはサブ機能(Speciality)が定義されています。このサブ機能は、プロバイダの後に「.」(ピリオド)をつけて指定することで利用できます。Versionプロバイダのサブ機能は、バージョンの一部だけを表示する機能を持っています。

C:\>\ZendFramework-1.9.1\bin\zf.bat show version.major-part

 ▼

ZF Major Version: 1

 Versionプロバイダにはこの「major-part」サブ機能以外にも「minor-part」サブ機能、「mini-part」サブ機能があります。

(2)Phpinfoプロバイダ

 単純にphpinfo()関数を呼び出した結果を表示するだけです(「php -i」と同じです)。

C:\>\ZendFramework-1.9.1\bin\zf.bat show phpinfo

 ▼

phpinfo()
...

(3)Manifestプロバイダ

 登録されているマニフェストの一覧を表示します。このマニフェストは、プロバイダやクライアントに関するさまざまな情報(メタ情報)が登録されています。例えば利用可能なプロバイダやアクションの名前に関するマニフェストもあれば、そのアクションが取る引数に関するマニフェストもあります。

 Manifestプロバイダの機能は単純で、「show」アクションを呼び出すとマニフェストの一覧を出力します。この出力を見ることで、例えばどのようなプロバイダを利用できるかについて調べたりすることができます。

C:\>\ZendFramework-1.9.1\bin\zf.bat show manifest

 ▼

Tool
   actionName
      type=Tool, clientName=console, actionName=Create       : create
      type=Tool, clientName=console, actionName=Delete       : delete
      type=Tool, clientName=console, actionName=Show         : show
...

 この出力で表示される情報はマニフェストの種類ごとに区切られています(この区切りのことを「セクション」と呼ぶことにします)。各セクション内では、1行ごとに1つの機能についての説明があります。例えば「Create」アクションについての説明は次のような行になっています。

type=Tool, clientName=console, actionName=Create                  : create

 このように、1つの行はコロン(:)で左右に区切れています。このうち、左側の部分(「type=Tool, clientName=console, actionName=Create」)には、この行がどのような機能に関しての説明であるのかを示しています。また、この行の右側の部分(「create」)には、この行に登録されている値を示しています。

 まず左側の部分ですが、ここでは3つの条件が書かれています。それぞれ「type=Tool」「clientName=console」「actionName=Create」です。「type=Tool」は、この機能の説明が記述されているマニフェストのクラスを示しています(標準では、この「Tool」以外のクラスのものはありません)。次の「clientName=console」は、この機能が対象とするクライアントが「console」であることを示しています。そして、「actionName=Create」は、この行が説明している機能がアクションの名前で、そのアクションの名前が「Create」であることを示しています。

 また右側の値「create」ですが、この機能を利用する場合にどのようにコマンドラインで記述すれば良いかが記述されています(標準で出力されるマニフェストについては、すべてコマンドラインでの記述する際の方法が登録されています)。

 標準状態で出力されるセクションは次のとおりです。

標準で出力されるマニフェストの種類
セクションの名前 重要な前提 説明
actionName actionName(アクションの名前) 登録されているアクション一覧
providerName providerName(プロバイダの名前) 登録されているプロバイダの一覧
specialtyName providerName(プロバイダの名前)、specialtyName(サブ機能の名前) プロバイダにサブ機能がある場合、その情報
actionableMethodLongParams actionName(アクションの名前)、providerName(プロバイダの名前)、specialtyName(サブ機能の名前) アクションの引数(長い形)
actionableMethodShortParams actionName(アクションの名前)、providerName(プロバイダの名前)、specialtyName(サブ機能の名前) アクションの引数(短い形)

 例えばPhpinfoプロバイダのShowアクションの引数についての情報を調べたい場合には「actionableMethodLongParams」セクションの次の行が参考になります。

type=Tool, clientName=console, actionName=Show, providerName=Phpinfo, specialtyName=_Global           : (empty array)

 この行、「Phpinfo」プロバイダの「Show」アクションのサブ機能「_Global」は引数を取らないことが分かります(サブ機能名が「_Global」はサブ機能を利用しない場合)。

次のページ
プロジェクトの管理

この記事は参考になりましたか?

Zend Framework入門連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 風田 伸之(カゼタ ノブユキ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/4489 2009/11/18 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー