Я пытаюсь создать API для социальной сети Elgg. Это работает, но я очень озадачен некоторыми результатами.
Это мой API:
function my_get_group() {
$group=elgg_get_entities(array(
types => 'group',
guid=>75,
));
return var_export($group[0], true);
}
и это результат
{
status: 0
result: "ElggGroup::__set_state(array( 'url_override' => NULL, 'icon_override' => NULL, 'temp_metadata' => array ( ), 'temp_annotations' => array ( ), 'temp_private_settings' => array ( ), 'volatile' => array ( ), 'tables_split' => 2, 'tables_loaded' => 2, 'attributes' => array ( 'guid' => 75, 'type' => 'group', 'subtype' => 0, 'owner_guid' => 54, 'site_guid' => 1, 'container_guid' => 54, 'access_id' => 2, 'time_created' => 1442385556, 'time_updated' => 1442385557, 'last_action' => 1442455132, 'enabled' => 'yes', 'name' => 'goup1', 'description' => '<p>description1</p>', ), 'valid' => false, ))"}
Все идет нормально.
Теперь я могу изменить свой API, чтобы получить только описание, изменив
//return var_export($group[0], true);
return var_export($group[0]->description, true);
что дает мне
{
status: 0
result: "'<p>description1</p>'"}
Теперь часть, которую я не понимаю, заключается в следующем. если я изменю свой код на:
//return var_export($group[0], true);
return var_export($group[0]->briefdescription, true);
я получил
{
status: 0
result: "'brief description1'"}
Может кто-нибудь объяснить мне, откуда эти данные? Я не вижу упоминания краткого описания, когда я бегу
return var_export ($ group [0], true);
Спасибо за вашу помощь
bonododo
Все эти ценности приходят через Магические методы PHP __get
а также __set
, Причина, по которой вы видите описание в var_export
Результатом является то, что это атрибут, briefdescription
это метаданные.
Посмотри на документация, особенно:
Других решений пока нет …