Объясните, почему не выводит данные массива?
И так, учусь…
Пробую получить данные из раздела, использую приложение консоль.
вар дамп пустой… принт р тоже ничего не выводит, почему, подскажите начинающему.
Пробую получить данные из раздела, использую приложение консоль.
вар дамп пустой… принт р тоже ничего не выводит, почему, подскажите начинающему.
<?php
$id = 12;
if(!$pages = $modx->getCollection('modResource', array(
'parent' => $id,
'template' => 9
))){return;}
foreach($pages as $doc => $id){
var_dump ($doc);
}
Комментарии: 11
Пытаюсь получить ID документов в массив.
Скорее всего нет шаблона с id = 9 у дочерних документов.
А что он должен выводить, если пусто?
if(!$pages = $modx->getCollection('modResource', array(
'parent' => $id,
'template' => 9
))){return 'Нет документов!';}
Так это с примера, а что надо писать туда???
Найди одно отличие.
Код рабочий, либо id родителя либо id шаблона указан неверно.
Так выведутся все объкты
ЗЫ: А так Сергей правильно написал, посмотри, может у тебя ничего не находит, соответственно и выводить нечего.
foreach($pages as $doc => $id){
var_dump ($doc);
}
Пиши лучше так с var_dump или c print_r:foreach($pages as $doc){
var_dump ($doc->toArray());
}
Доступ к полю получишь через $doc->get('field');ЗЫ: А так Сергей правильно написал, посмотри, может у тебя ничего не находит, соответственно и выводить нечего.
Спасибо за подсказки, заработало. Подскажите тогда вот что еще, пробуй в forteach сделать функцию получения значений TV. Ошибка говорит что такая функция есть… Бред какой то :)
<?php
$id = 12;
if(!$pages = $modx->getCollection('modResource', array(
'parent' => $id,
'template' => 9
))){return;}
function tvImg(){
foreach($pages as $doc){
print_r ($doc->toArray());
}
return $doc;
}
$docs = tvImg();
echo $docs;
при выполнении получаю вот это, в данный момент, попытка через функцию вывести все что есть в foreach().Исходный код
[2016-02-18 16:16:30] (WARN @ xxx.ru/core/components/console/processors/exec.class.php(15) : eval()'d code : 11)
PHP notice: Undefined variable: pages
[2016-02-18 16:16:30] (ERROR @ xxx.ru/core/components/console/processors/exec.class.php(15) : eval()'d code : 11)
PHP warning: Invalid argument supplied for foreach()
[2016-02-18 16:16:30] (WARN @ xxx.ru/core/components/console/processors/exec.class.php(15) : eval()'d code : 14)
PHP notice: Undefined variable: doc
Спс, помогло, но теперь не могу понять, как получить TV значения документов, ID которых я получил ??? Подскажите куда рыть…
Рассматриваю это направление.
Рассматриваю это направление.
$resource = $modx->getObject('modResource',array('pagetitle'=>'SomePage'));
$val = $resource->getTVValue('name_of_tv');
$val = $resource->getTVValue($id); // ID of the TV (not the document)
Но оно не работает…
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.