Где найти файл с описанием стандартных свойств Битрикса

Работал над новым свойством для инфоблоков, потребовалось увидеть, как устроены стандартные свойства. Понял, что искать их самому по ФС Битрикса долго и неправильно и как настоящий программист, написал код, который сообщает для каждого свойства файл, в котором он описан. Выношу этот код на суд публики.

CModule::IncludeModule("iblock");
$arProperties = CIBlockProperty::GetUserType();
foreach ($arProperties as $arProperty)
{
    echo '<pre>',print_r($arProperty["PROPERTY_TYPE"] . ":" . $arProperty["USER_TYPE"], true),'</pre>';
    echo '<pre>',print_r($arProperty["DESCRIPTION"], true),'</pre>';
    $sClassName = $arProperty[array_pop(array_keys($arProperty))][0];
    $reflect = new ReflectionClass($sClassName);
    echo '<pre>',print_r(str_replace($_SERVER["DOCUMENT_ROOT"], "", $reflect->getFileName()), true),'</pre>';
    echo "<hr>";
}

Пример вывода

описание стандартных свойств битрикса

Комментарии (1)

...
  • Дмитрий
  • 30.10.2014 10:40:28
Для типов пользовательских св-в UF_

global $USER_FIELD_MANAGER;
$arUserTypes = $USER_FIELD_MANAGER->GetUserType();
foreach($arUserTypes as $arUserType)
{
$reflect = new ReflectionClass($arUserType['CLASS_NAME']);
echo '<pre>',print_r($arUserType['DESCRIPTION'], true),'</pre>';
echo '<pre>',print_r($arUserType['CLASS_NAME'], true),'</pre>';
echo '<pre>',print_r(str_replace($_SERVER["DOCUMENT_ROOT"], "", $reflect->getFileName()), true),'</pre>';
echo '<br>';
}