2016-10-24 8 views
1

私は単純なMVCアプリケーションを開発し始めています。私はshow.php$ingredient->item_idまたは任意の属性などの属性$ingredientオブジェクトにアクセスすることができません未定義のプロパティ。他のページのオブジェクト属性を呼び出せません

public function show() 
    { 
     if (!isset($_GET['id'])) 
      return call('pages', 'error'); 
     $ingredient = Ingredients::find($_GET['id']); 
     require_once('views/ingredients/show.php'); 
    } 

私のコントローラで、以下の関数を呼び出します。しかし、同じ機能内でオブジェクトの属性を呼び出すことができます。

マイshow.phpページは私のモデルは、このようになります。この

<p>This is the requested Ingredients:</p> 
 

 
<p><?php echo $ingredient->item_id; ?></p> 
 
<p><?php echo $ingredient->stock_id; ?></p> 
 
<p><?php echo $ingredient->item_qunatity; ?></p> 
 
<p><?php echo $ingredient->item_unit; ?></p>

のように見えます。このクラスの名前は、ここでの問題は、あなたが別の方法の範囲内でそれらにアクセスしようとしながら、1つの方法の範囲でこれらの機能を定義することである成分

+0

$原料を印刷する前にshow()関数を呼び出していますか? – Jigar7521

+0

はい。前に関数を呼び出しています。関数内の変数に変数を格納し、変数をshow.phpに代わりに表示すると、この問題が発生します。 – prithivraj

+0

$ ingredient = Ingredients :: find($ _ GET ['id']);からデータを取得した後。 、ダンプ$原料、これはすべての価値を与えるのですか?私に知らせてください – Jigar7521

答えて

0

です。それらは2つの別々のものです。

このようなことを実現するには、変数をグローバルスコープ(悪い習慣とみなされる)で宣言するか、オブジェクトプロパティ内に格納する必要があります。

関連する問題