Добрый день подскажите, можно ли так писать с точке зрения оптимального кода. Пытаюсь учиться писать хороший код
Задача была такая: в отдельном компоненте вывести отзывы связанные с услугами которые в свою очередь связанны с мероприятиями.
Что я делаю в этом куске кода:
Беру id услуги из $_GET , затем выбираю все его свойства связанных мероприятий у данной услуги, в свою очередь у этих мероприятий выбираю уже связанные с ними отзывы.
Задача была такая: в отдельном компоненте вывести отзывы связанные с услугами которые в свою очередь связанны с мероприятиями.
Что я делаю в этом куске кода:
Беру id услуги из $_GET , затем выбираю все его свойства связанных мероприятий у данной услуги, в свою очередь у этих мероприятий выбираю уже связанные с ними отзывы.
| Код |
|---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?$idEvents = (int)$_GET["ID"]?>// ID текущей услуги
<?$feedback = Array()?>
<?$arSelect = Array("PROPERTY_EVENTS")?>
<?$arFilter = Array("IBLOCK_ID"=>10, "ID"=>$idEvents,"ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
$res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect );
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
if(!empty($arFields["PROPERTY_EVENTS_VALUE"]))
$arSelectREWIEWS = Array("PROPERTY_REVIEWS");
$arFilterREWIEWS = Array("IBLOCK_ID"=>11, "ID"=>$arFields["PROPERTY_EVENTS_VALUE"],"ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
$resREWIEWS = CIBlockElement::GetList(Array(), $arFilterREWIEWS , false, false, $arSelectREWIEWS );
while($obREWIEWS = $resREWIEWS ->GetNextElement()){
$arFieldsREWIEWS = $obREWIEWS ->GetFields();
if(!empty($arFieldsREWIEWS ["PROPERTY_REVIEWS_VALUE"]))
$feedback[] = $arFieldsREWIEWS ["PROPERTY_REVIEWS_VALUE"] ;
}
}
?>
|