Вывод результата работы функции

Вывод результата работы функции

19.01.2016

Одним из важных этапов в администрировании сайта является диагностика возникшей проблемы. Прежде чем, что-то починить, нужно для начала найти источник поломки.
Исходные данные:
Проверка сайта не диагностирует проблем, нет ошибок при тестировании
Суть проблемы: При добавлении одного изображения для свойства типа «файл» автоматом тянется «левое» изображение из /upload/resize_cache/
При добавлении второго фото и последующих левое фото из resize_cache пропадает.
Лицензия «Старт», компонент «новости»

кеш-фото-копия

Мое предположение было, что CFile::ResizeImageGet от одного фото возвращает картинку другого фото.
Направление я определил, это на мой взгляд следующий код вызова АПИ функции, который приводит к проблеме:
<!— Доп. изображения —>
<? foreach ($arResult[«DISPLAY_PROPERTIES»][«PHOTOMISS»][«FILE_VALUE»] as $PHOTO): ?>
<!— Авто ресайз доп. изображений с помощью CFile::ResizeImageGet —>
<? $file = CFile::ResizeImageGet($PHOTO, array(‘width’=>’700’, ‘height’=>’700’),
BX_RESIZE_IMAGE_EXACT, true); ?>
<a href=»<?=$file[«src»]?>» height=»467″ class=»highslide» oncl ick=»return hs.expand(this)»>
<img border=»0″ src=»<?=$file[«src»]?>» width=»110″ height=»110″
alt=»<?=$arResult[«NAME»]?>» title=»<?=$arResult[«NAME»]?>» />
</a>
<? endforeach ?>

Теперь нужно получить массив, который возвращается функцией, при такой проблеме, т.е результат работы функции CFile::ResizeImageGet.  Получить можно следующим способом:

<? foreach ($arResult[«DISPLAY_PROPERTIES»][«PHOTOMISS»][«FILE_VALUE»] as $PHOTO): ?>
<? $file = CFile::ResizeImageGet($PHOTO, array(‘width’=>’700’, ‘height’=>’700’),
BX_RESIZE_IMAGE_EXACT, true); ?>
<?{echo ‘<pre>’; print_r($file); echo ‘</pre>’;} ?>
<? endforeach ?>

Результат:
Array
(
[src] => /upload/iblock/de4/de467d64c8fa52e9a3fa2c1790f91ed8.jpg
[width] => 350
[height] => 467
[size] => 30913
)

Array
(
[src] => /upload/resize_cache/obyava/edf/700_700_2/edf80e7e585ee6d1a070472ee32eead1.jpg
[width] => 700
[height] => 700
[size] => 83450
)

Результат получили. но теперь нам нужно понимать, сколько раз и от каких файлов вызывается метод, что приводит к такому результату.
Добавляем в вывод еще информацию:
$rsFile = CFile::GetByID($PHOTO);
$arFile = $rsFile->Fetch();
print_r($arFile);

Судя по тому, что левое изображение у меня без возврата ResizeImageGet, а только описание по GetByID, то это изображение скорее всего приходит из самого элемента инфоблока.
Итог:
Используется описание одного значения свойства как массив значений, вот в чем проблема.
В $arResult[«DISPLAY_PROPERTIES»][«PHOTOMISS»][«FILE_VALUE»] идет массив описания одного файла.
Соответственно $arResult[«DISPLAY_PROPERTIES»][«PHOTOMISS»][«FILE_VALUE»][«ID»] и надо использовать на вход функции ресайза.


Ещё статьи:

15.02.2024 История о жадности или как клиент свободное место искал на сервере
Случилась у меня одна история с клиентом, который свободное место искал на сервере, но на самом деле это больше о жадности, но в итоге всё равно пришл... ID: 466

08.11.2023 Хроники БУС упадка
На днях произошли очередные изменения в БУС битрикс. Полезный модуль bitrix.xscan включили в состав проактивной защиты и убрали из бесплатного сегмента... ID: 465

26.07.2023 Kwork.com закрыл доступ для резидентов РФ
Доступ к выставлению услуг теперь ограничен "К сожалению, вынуждены сообщить, что резиденты РФ в настоящее время не могут использовать сайт Kwork... ID: 463

Новые статьи в блоге:

31.07.2024 Нюансы продления лицензии на 3 и 6 месяцев от 12 месяцев
На маркетплейсе есть такая кнопка "купить продление", при нажатии на неё есть выпадающий список продолжительность (3 мес. самый дешовый ... ID: 494

31.07.2024 Ошибка в блоке "Вы смотрели" на базе catalog.section
При создании блока "Вы смотрели" на базе catalog.section на детальной странице товара столкнулся с ошибкой, когда блок работал не корректно,... ID: 493

28.05.2024 cURL error 28 Connection timed out after 10001 milliseconds
Ошибка загрузки загрузки обновлений вордпресс. Не даёт закачать обновление на сайт, возможно есть какая-то информация в логах сервера. ID: 470

Возврат к списку

© 2015-2024 Web админ
Связаться по WhatsApp