Битрикс получаем все свойства элемента
0
27.08.202511:1427.08.2025 11:14:00
Для получения всех свойств элементов битрикс можно воспользоваться скриптом, в этом скрипте я еще записал свойства в csv файл:
<?php
use Bitrix\Main\Loader;
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
if (!Loader::includeModule("iblock")) {
die("Модуль iblock не подключен");
}
$IBLOCK_ID = 55;
$filePath = $_SERVER["DOCUMENT_ROOT"]."/upload/iblock_{$IBLOCK_ID}_fields.csv";
// Открываем файл для записи
$fp = fopen($filePath, "w");
// Заголовки CSV
fputcsv($fp, ["Название", "Код", "Обязательное", "Множественное", "Тип поля"], ";");
// Функция для преобразования типа
function getPropertyTypeName($prop) {
$types = [
"S" => "Строка",
"N" => "Число",
"L" => "Список",
"F" => "Файл",
"E" => "Привязка к элементу",
"G" => "Привязка к разделу"
];
$baseType = $types[$prop["PROPERTY_TYPE"]] ?? $prop["PROPERTY_TYPE"];
// Если пользовательский тип указан — уточняем
if (!empty($prop["USER_TYPE"])) {
$baseType .= " ({$prop["USER_TYPE"]})";
}
return $baseType;
}
// Получаем список свойств инфоблока
$properties = CIBlockProperty::GetList(
["SORT" => "ASC"],
["IBLOCK_ID" => $IBLOCK_ID]
);
while ($prop = $properties->Fetch()) {
$row = [
$prop["NAME"],
$prop["CODE"],
($prop["IS_REQUIRED"] === "Y" ? "да" : "нет"),
($prop["MULTIPLE"] === "Y" ? "да" : "нет"),
getPropertyTypeName($prop)
];
fputcsv($fp, $row, ";");
}
fclose($fp);
echo "Файл успешно создан: ".$filePath;
|
27.08.202511:1427.08.2025 11:14:00