Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2019, 19:10   #1
Illusiony
Форумчанин
 
Регистрация: 17.02.2014
Сообщений: 881
По умолчанию Получить несколько объектов в качестве аргументов и получить доступ к каждому объекту

Имеется несколько одинаковых объектов с разными данными.
Пытаюсь передать их другому объекту при создании объекта ( конструктору)
Получается получить доступ только к первому объекту.
Код:
// кусок класса EntreeSumMoney 
public function __construct ($ingredients)
    {   var_dump($ingredients);
        echo 'Test1';
         $arr_ingredients[]=$ingredients;
         echo 'Тип'.gettype( $arr_ingredients).'---';
        foreach ($arr_ingredients as $key => $value) {
                 echo 'key'.$key.PHP_EOL;
                 //echo 'value'.$value.PHP_EOL;
               //  var_dump($value);
                foreach ($value as $key1 => $value1) {
                   echo 'key1 '.$key1." => ".$value1->getName().PHP_EOL;
                    echo 'key1 '.$key1." => ".$value1->getMoney().PHP_EOL;
                }
        }
     }
$apple=new Ingredients('Apple',120);
$tree=new Ingredients('Tree',200);
$tree2=new Ingredients('Tree2',2000);
 
$EntreeSumMoney=new EntreeSumMoney($apple,$tree);
Многое пробовал, но так и не получилось просто вывести значение данных каждого объекта.
методы getName(),getMoney() рабочие.
При таком коде var_dump($ingredients); выдает только первый объект.
Как правильно организовать "прием" несколько объектов и вызвать нужные методы к ним?
Illusiony вне форума Ответить с цитированием
Старый 18.04.2019, 19:49   #2
freebsdd
Пользователь
 
Регистрация: 18.04.2019
Сообщений: 26
По умолчанию

Странно, создание объекта

$EntreeSumMoney=new EntreeSumMoney($apple,$tree);

2 значения

а в public function __construct ($ingredients)

принимает одно значение

Если и делать по уму, то все объекты в массив и передать классу, т.е.:

$EntreeSumMoney=new EntreeSumMoney(array($apple,$tree)) ;

А там уже обрабатывать как хочешь..
freebsdd вне форума Ответить с цитированием
Старый 18.04.2019, 19:58   #3
Illusiony
Форумчанин
 
Регистрация: 17.02.2014
Сообщений: 881
По умолчанию

Цитата:
Сообщение от freebsdd Посмотреть сообщение
Странно, создание объекта

$EntreeSumMoney=new EntreeSumMoney($apple,$tree);

2 значения

а в public function __construct ($ingredients)

принимает одно значение

Если и делать по уму, то все объекты в массив и передать классу, т.е.:

$EntreeSumMoney=new EntreeSumMoney(array($apple,$tree)) ;

А там уже обрабатывать как хочешь..
Видимо так и надо, все просто оказалось
Спасибо !
Illusiony вне форума Ответить с цитированием
Старый 18.04.2019, 20:03   #4
freebsdd
Пользователь
 
Регистрация: 18.04.2019
Сообщений: 26
По умолчанию

Не за что)
freebsdd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Powershell: Получить IPv4 адрес и использовать его в качестве аргумента для команды netsh EAGauss Помощь студентам 0 29.08.2015 22:32
Как получить доступ к свойствам img? roxy7 JavaScript, Ajax 2 09.10.2012 15:06
Получить доступ MyXa C# (си шарп) 4 03.10.2012 08:10
как получить доступ к диску С Daif2 Помощь студентам 1 06.07.2012 20:42
получить доступ к USB из браузера frommars Общие вопросы C/C++ 3 28.06.2012 16:15