У меня есть класс PHP под названием "еда". Внутренняя структура данных класса - Array.
class Food
{
public $dataArray;// = array();
public $sidesArray;// = array();
public function __construct()
{
$this->dataArray = array();
$this->sidesArray = array();
echo"Created new Food instance<br/>";
}
public function setName($food_Name)
{
$this->dataArray["food_name"] = $food_Name;
}
public function getName()
{
return $this->dataArray["food_name"];
}
Когда я вызываю этот метод класса:
$food_name = $foodItem->getName();
Я получаю это исключение:
Fatal error: Call to a member function getName() on a non-object......
Однако, когда я вызываю эту функцию на объекте:
print_r($foodItem);
Я получаю этот вывод:
Array ( [0] => Food Object ( [dataArray] => Array ( [food_name] => SimpleXMLElement Object ( [0] => Tomato Soup ) [food_Cals] => SimpleXMLElement Object ( [0] => 200 ) [food_Desc] => SimpleXMLElement Object ( [0] => great ) [food_price] => SimpleXMLElement Object ( [0] => 2.00 ) [num_sides] => SimpleXMLElement Object ( [0] => 1 ) ) [sidesArray] => Array ( [0] => Side Object ( [dataArray:private] => Array ( [side_name] => SimpleXMLElement Object ( [0] => mashed potatoes ) [side_Cals] => SimpleXMLElement Object ( ) [side_Category] => SimpleXMLElement Object ( [0] => Sides ) [side_desc] => SimpleXMLElement Object ( ) [side_price] => SimpleXMLElement Object ( [0] => 2.00 ) ) ) ) ) )
Мой вопрос: почему этот метод getName () не работает?
Как я могу получить "имя" из объекта foodItem.
Любая помощь будет принята с благодарностью.
Спасибо