Создал тестовую страницу в корне сайта на ней вывожу следующий код, массив arCover пустой(
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
CModule::IncludeModule('iblock');
CModule::IncludeModule('highloadblock');
use Bitrix\Highloadblock as HL;
use Bitrix\Main\Entity;
function getCoverList ($iblockID, $xmlID)
{
$hlblock = HL\HighloadBlockTable::getById($iblockID)->fetch();
if (!empty($hlblock))
{
echo "<pre>"; print_r($hlblock); echo "</pre>";
$entity = HL\HighloadBlockTable::compileEntity($hlblock);
$entity_data_class = $entity->getDataClass();
$fields = $GLOBALS['USER_FIELD_MANAGER']->GetUserFields('HLBLOCK_'.$hlblock['ID'], 0, LANGUAGE_ID);
$main_query = new Entity\Query($entity);
$main_query->setSelect(array('UF_NAME', "UF_FILE", "UF_FULL_DESCRIPTION"));
$main_query->setOrder(array("ID" => "DESC"));
$main_query->setFilter(array("UF_XML_ID" => $xmlID));
$result = $main_query->exec();
$result = new CDBResult($result);
while ($row = $result->Fetch())
{
$row["UF_FILE"] = CFile::GetPath($row["UF_FILE"]);
$arCover = $row;
}
}
return $arCover;
}
$arCover = getCoverList (7, "cover1"); // элемент с таким XML_ID имеется в инфоблоке
echo "<pre>"; print_r($arCover); echo "</pre>";
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
В функции начиная со строки $hlblock пустая, почему, подскажите пожалуйста.
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
CModule::IncludeModule('iblock');
CModule::IncludeModule('highloadblock');
use Bitrix\Highloadblock as HL;
use Bitrix\Main\Entity;
function getCoverList ($iblockID, $xmlID)
{
$hlblock = HL\HighloadBlockTable::getById($iblockID)->fetch();
if (!empty($hlblock))
{
echo "<pre>"; print_r($hlblock); echo "</pre>";
$entity = HL\HighloadBlockTable::compileEntity($hlblock);
$entity_data_class = $entity->getDataClass();
$fields = $GLOBALS['USER_FIELD_MANAGER']->GetUserFields('HLBLOCK_'.$hlblock['ID'], 0, LANGUAGE_ID);
$main_query = new Entity\Query($entity);
$main_query->setSelect(array('UF_NAME', "UF_FILE", "UF_FULL_DESCRIPTION"));
$main_query->setOrder(array("ID" => "DESC"));
$main_query->setFilter(array("UF_XML_ID" => $xmlID));
$result = $main_query->exec();
$result = new CDBResult($result);
while ($row = $result->Fetch())
{
$row["UF_FILE"] = CFile::GetPath($row["UF_FILE"]);
$arCover = $row;
}
}
return $arCover;
}
$arCover = getCoverList (7, "cover1"); // элемент с таким XML_ID имеется в инфоблоке
echo "<pre>"; print_r($arCover); echo "</pre>";
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
В функции начиная со строки $hlblock пустая, почему, подскажите пожалуйста.