Задать вопрос
@wideShift

Можно ли через foreach перебирать объект класса?

Скажем, в классе определить что вернется в foreach для перебора
$classObject = new MyClass();
foreach ($classObject as $item) {}
  • Вопрос задан
  • 231 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
Nordic_Alf
@Nordic_Alf
PHP Developer
Да. Переберёт все публичные свойства.
А если надо ещё и протектед/приватные, то просто создай внутри класса метод с перебором всех свойств:

<?php
class MyClass
{
    public $public = 'значение 1';
    protected $protected = 'защищённая переменная';
    private $private   = 'закрытая переменная';

    public function iterateAll() {
       foreach ($this as $key => $value) {
           print "$key => $value\n";
       }
    }
}

$class = new MyClass();
$class->iterateAll();
Ответ написан
Комментировать
New_Horizons
@New_Horizons
Бред:
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы