1

このように難しいことではないようですが、私にフィット感を与えています。

モデルの__constructメソッドで変数を初期化します。

view.html.phpおよびdefault.phpファイルでそれらにアクセスする必要があります。

私のモデルでは:

$this->MyVar = 'somevalue';

私のview.html.phpでは:

$model = $this->getModel('mymodelname');
print_r($model) //checking, yes - the model's being pulled in
$myvar = $model->__construct($this->MyVar);
echo $myvar; //empty

何が間違っているので、どうすれば修正できますか?

ありがとう!

=========================================

解決:

$model = $this->getModel('mymodelname');
echo $model->MyVar; // returns the variable in the model
4

2 に答える 2

2

__construct()は値を返しません。これが、$myvarが残る理由ですnull必要に応じて、ここで詳細を読むことができます

(上記のリンクの)仕様__constructに従って、次のフィールドの1つ以上を保持できる連想配列に渡す必要があります。

  • 'name'
  • 'state'
  • 'dbo'
  • 'table_path'

そしてあなたの言うことによると-あなたはパラメータを渡します。試す:

$arr = array('name' => $this->MyVar);
$model->__construct($arr);
于 2012-08-30T19:31:48.890 に答える
1

モデルをインスタンス化した後でコンストラクトを使用する理由は、次のようになります。

$model = $this->getModel('mymodelname');
$model->MyVar = $myvar;
于 2012-08-31T08:16:01.887 に答える