Рейтинг:0

Доступ к защищенным данным меню

флаг pt

Как можно получить доступ к защищенным данным объекта меню, изображенного ниже?

введите описание изображения здесь

с использованием $меню->идентификатор() работает и возвращает идентификатор меню. Но лучше $меню->значения ни $меню->получить('значения') работай.

4uk4 avatar
флаг cn
Чтобы получить все значения, используйте `->toArray()`. См. тот же вопрос для узлов https://drupal.stackexchange.com/questions/233098/how-to-access-values-in-node-object.
Рейтинг:0
флаг cn

Это объект контента, поэтому вы получаете доступ к полям с помощью магических методов, например.

$x = $menu->field_foo->значение;
флаг pt
Я попробовал `$menu->values->value`, но это вернуло ноль. `$menu->values` на самом деле является массивом в объекте меню. И хотя магические методы вызываются с помощью `$menu->get('values')`?
флаг cn
`$values` на самом деле содержит значения свойств сущности (не свойств класса, возможно, это немного сбивает с толку). Когда вы используете `$entity->foo`, вы запрашиваете `$values['foo']` с помощью магического метода (https://api.drupal.org/api/drupal/core%21lib%21Drupal% 21Core%21Entity%21ContentEntityBase.php/function/ContentEntityBase%3A%3A__get/8.2.x). Вам не нужно пытаться получить доступ непосредственно к `$values`, на самом деле вы не можете это сделать, так как общедоступного метода нет, но вы можете использовать волшебство get, чтобы запросить что-либо внутри него. Надеюсь, это прояснит ситуацию, но если нет, просто отредактируйте пост и упомяните, что вы...
флаг cn
...пытается добраться до вас, и это должно быть достаточно легко указать вам правильное направление

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.