В чем отличие возвращаемого массива от объектов? Ребят, помогите понять, какая разница в возвращаемом результате.
Для чего, в данном случае, возвращать объекты? Чем мне это поможет на конкретном примере?
Хочу разобраться окончательно)
1. Получаем массивclass Product
{
public $data = [];
public function getAll(){
foreach(range(0, 10) as $v){
$this->data[$v]['id'] = $v;
$this->data[$v]['name'] = 'Name';
$this->data[$v]['price'] = rand(100, 500);
}
return $this->data;
}
}
$a = new Product();
var_dump($a->getAll());
2. получаем коллекцию объектовclass Product
{
public $id;
public $name;
public $price;
public function __construct(int $id, string $name, int $price){
$this->id = $id;
$this->name = $name;
$this->price = $price;
}
}
class ProductCollection
{
public $data = [];
public function getAll(){
foreach(range(0, 10) as $v){
$this->data[] = new Product($v, 'Name', rand(100, 500));
}
return $this->data;
}
}
$b = new ProductCollection();
var_dump($b->getAll());

21 Авг 2019 в 06:58
175 +1
0
Ответы
1

Возвращаемый массив из класса Product содержит данные в виде ассоциативного массива, где каждый элемент представляет собой отдельный продукт с его id, названием и ценой. Такой массив можно легко обрабатывать и использовать для дальнейших операций.

Возвращаемая коллекция объектов из класса ProductCollection содержит объекты класса Product, каждый из которых представляет отдельный продукт. Это позволяет создавать более структурированные данные и обращаться к ним, используя методы и свойства объектов.

В случае объектов, возвращение коллекции может быть полезно, если требуется проводить операции над отдельными продуктами или реализовать сложную логику, связанную с каждым объектом. Например, можно создать методы для сортировки продуктов по цене, изменения цены продукта, или вывода информации о конкретном продукте.

Таким образом, выбор между возвращением массива и коллекции объектов зависит от специфики задачи и требований к структуре данных. Оба варианта имеют свои преимущества и могут быть использованы в зависимости от конкретной ситуации.

20 Апр 2024 в 13:10
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир