konekto Inc with PHP , MySQL コネクト株式会社 技術情報コンテンツ


Old/Zend Studio/8

PHPクラスの作成

下記の5つのプロパティーを持つ取引先クラス、businessPartner を作成する例を紹介します。
プロパティーの種類は protected とし、それぞれ設定/取得メソッドでアクセスするものとします。
このクラスは ユニットテスト でも使用します。 Zend Studio 8.0 日本語版を使用して説明します。

プロパティー変数名
ID_id
名称_name
電話番号_tel
住所_address
与信額_creditLinit

クラスの骨格生成

  1. PHP エクスプローラビュー上で PHP プロジェクトを作成します。
    プロジェクト名は任意です。この例ではプロジェクト名を unittest とします。
  2. 作成した PHP プロジェクト上で右クリックして、メニューから New>クラス を選びます。(Ver 6.1 では、新規>PHP クラス)
  3. 「New PHP Class」ダイアログが表示されます。
    「Class 名前」入力欄に、作成するクラス名 businessPartner を入力します。
    「Class 名前」を入力すると、「新規ファイルの作成」入力欄の PHP ファイル名も自動的に変わります。
  4. 終了ボタンを押すとクラスが作成されます。

プロパティーの定義

  1. businessPartner クラスに、各プロパティーを記述します。
  2. 下記は、5つのプロパティーを記述し終わった状態です。
    この時、左下のアウトラインビューを見ると、5つのプロパティーが businessPartner にぶら下がっていることが確認できます。
    class businessPartner {
    
        protected $_id;
    
        protected $_name;
    
        protected $_tel;
    
        protected $_address;
    
        protected $_creditLimit;
    
    }
  3. 次にコメントを追加します。
    アウトラインビュー上でプロパティーを右クリックして、表示されるメニューから、ソース>要素のコメントを生成 を選びます。(Ver 6.1 では、ソース>PHPDocの追加)
  4. コメントの雛形が作成されます。
    与信額 ($_creditLimit) のみ integer, 他のプロパティーは string として、コメントを完成させます。
    /**
     * ID
     *
     * @var string
     */
    protected $_id;
    
    //ここで定義した @var の型は、後述のプロパティー取得/設定メソッドの追加でも利用されます。

プロパティー取得/設定メソッド追加

  1. 再び、アウトラインビュー上でプロパティーを右クリックします。
    Getter 及び Setter を生成 を選択します。
    Getter はプロパティーを取得するためのメソッド、Setter はプロパティーを設定するためのメソッドを意味します。
  2. 「getter および setter を生成」ダイアログが表示されます。
    プロパティー全てに対して生成させるためには、各プロパティーの横のチェックボックス全てをチェックしてください。
    「挿入ポイント」の選択肢では「最後のメソッド」を推奨します。
    「最初のメソッド」を選択した場合は、最初のプロパティーの記述よりも前に各メソッドが追加されます。
    「最後のメソッド」の場合は、最後のプロパティーの記述よりも後にメソッドが追加され、見栄えが良くなります。
  3. 各プロパティーのコメントを反映した Getter 及び Setter が生成されます。下記に それぞれの例を示します。
    Getter 及び Setter のコメント生成内容は、メニューバーの ウィンドウ>設定>PHP>コードスタイル>コードテンプレート>コメント の getter および setter で指定できます。
    /**
     * @return $_address
     */
    public function getAddress ()
    {
        return $this->_address;
    }
    
    /**
     * @param string $_address
     */
    public function setAddress ($_address)
    {
        $this->_address = $_address;
    }
    
    /**
     * 各プロパティーのコメントで @var を定義し忘れると、Setter のコメントで、
     * string や integer の代わりに field_type が記述されます。
     * (Ver 6.1 では、Getter 及び Setter ともに unknown_type と記述されました)
     */

最終更新のRSS