Можете ли вы перебрать свойства красноречивого объекта?

Если у меня есть например:

$project = new Project(); // Project is a class that extends Eloquent
$project->title;
$project->something;

Можно ли перебрать эти свойства … как-то так:

foreach( $project as $key => $value )
{
echo $key;
}

Я пытаюсь сделать это, чтобы добиться единицы работы для редактирования моделей Eloquent

7

Решение

Вы можете использовать toArray() метод:

foreach( $project->toArray() as $key => $value )
{
echo $key;
}

http://laravel.com/docs/4.2/eloquent#converting-to-arrays-or-json

13

Другие решения

Вы также можете использовать getAttributes() метод:

foreach ($project->getAttributes() as $k => $v) {
echo $k.' '.$v."<br />";
}
6

По вопросам рекламы [email protected]