Zendのフレームワークと教義(getterおよびsetter)
-
20-09-2019 - |
質問
それはのような既存のエンティティモデルの教義を使用することはできます:
class user{
protected $_id;
protected $_name;
public function set_id($_id){}
public function get_id(){}
public function set_name($_name){}
public function get_name(){}
}
またはハードコードされたゲッターとセッターとモデルを生成又は使用する。
私が使用したいいけない。
$user->name
$user['name']
$user->get('name')
この教義を行うことができますか?
ありがとう
解決
教義1.2までのすべてのバージョン: あなたのエンティティモデルクラスはDoctrine_Recordクラスを拡張する必要があります。
モデルフィールドの定義があまりにも「教義の道」を行う必要があります。 参照してください: http://www.doctrine-project.org/ドキュメント/マニュアル/ 1_2 / EN / - モデルを定義する
例:
パブリック関数setTableDefinition() {
$this->hasColumn('username', 'string', 255); $this->hasColumn('password', 'string', 255);
}
あなたは魔法のgetter / setterをオーバーライドすることができ、独自のカスタムハードコーディングされたセッター/ゲッターを使用したい場合。 参照してください:ます。http://www.doctrine-project。 ORG /ドキュメント/マニュアル/ 1_2 / EN /導入・ツー・モデルの 例:
クラスユーザーBaseUser {
を拡張しますpublic function setPassword($password) { return $this->_set('password', md5($password)); }
}
最後の一つの発言は/質問:魔法のセッター/ゲッターメソッドを使用することをお勧めしますが、何らかの方法でデータを操作する必要がある場合..あなたは唯一、カスタムメソッドを使用する必要があります。
。所属していません StackOverflow