Николаев Виталий
Блог веб-разработчика: Битрикс, PHP, Python, Linux и SEO
Битрикс Битрикс
27.08.2025

Битрикс получаем все свойства элемента

Иногда в 1С-Битрикс нужно быстро получить список всех свойств инфоблока.

Например:

  • при переносе сайта;
  • аудите каталога;
  • настройке импорта;
  • интеграции с 1С;
  • разработке API;
  • анализе структуры инфоблока.

Ниже пример PHP-скрипта, который получает все свойства инфоблока и сохраняет их в CSV-файл.

Что выгружает скрипт

Скрипт выгружает:

  • название свойства;
  • символьный код;
  • обязательность;
  • множественность;
  • тип свойства.

PHP-скрипт выгрузки свойств инфоблока

<?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;

Как работает скрипт

Скрипт:

  • подключает модуль инфоблоков;
  • получает список свойств инфоблока;
  • определяет тип каждого свойства;
  • сохраняет данные в CSV-файл.

В своих проектах я использую серверную инфраструктуру Timeweb Cloud

VPS и облачные решения для стабильной работы сайтов на PHP и 1С-Битрикс — от корпоративных сайтов до интернет-магазинов и высоконагруженных веб-проектов.

Перейти на Timeweb Cloud
Реклама · ERID: CQH36pWzJqVJ4YD9t5y227AkMQdhpG2THarwRmX2g9tS8x

ID инфоблока

В скрипте используется:

$IBLOCK_ID = 55;

Замените значение на ID своего инфоблока.

Куда сохраняется CSV-файл

Файл сохраняется в директорию:

/upload/

Имя файла формируется автоматически:

iblock_55_fields.csv

Какие типы свойств определяются

Скрипт автоматически определяет:

  • строка;
  • число;
  • список;
  • файл;
  • привязка к элементу;
  • привязка к разделу.

Поддержка пользовательских типов

Если у свойства указан:

USER_TYPE

то он также будет добавлен в CSV.

Например:

Строка (HTML)

Пример результата CSV

Название;Код;Обязательное;Множественное;Тип поля
Артикул;ARTICLE;да;нет;Строка
Галерея;MORE_PHOTO;нет;да;Файл
Бренд;BRAND;нет;нет;Привязка к элементу

Когда пригодится такой экспорт

  • аудит структуры каталога;
  • документирование проекта;
  • подготовка миграций;
  • разработка интеграций;
  • настройка импорта/экспорта;
  • анализ инфоблоков;
  • работа с большими каталогами.

Как открыть CSV-файл

Полученный CSV-файл можно открыть:

  • в Excel;
  • LibreOffice Calc;
  • Google Sheets;
  • Notepad++.

Итог

С помощью CIBlockProperty::GetList() можно быстро получить все свойства инфоблока и выгрузить их в CSV-файл.

Такой подход удобен для анализа структуры Битрикс-проектов, каталогов и интеграций.

119 просмотров

Если возникли сложности

Помогу разобраться с настройкой, исправить ошибки и реализовать решение под ваш проект.

Поддержка сайтов на 1С-Битрикс

Поддержка сайтов на 1С-Битрикс: быстрое решение ошибок, консультации, обучение сотрудников и сопровождение сайта. 
Резервирую время под ваш проект для оперативной помощи и стабильной работы сайта.
Подробнее
Где заказы?

Почему один сайт стабильно приносит заявки, а другой годами просто «висит в интернете»?

В телеграм-канале «Где заказы?» я разбираю реальные ошибки бизнеса, SEO, сайты, рекламу, воронки продаж и показываю, почему компании теряют клиентов и как это исправить.

Без инфоцыганства и мотивационных цитат — только практика, кейсы и рабочие решения для бизнеса и веб-разработки.

Комментарии

Где заказы?
Почему у одних компаний очередь из клиентов, а у других пустой сайт и тишина?
Телеграм канал «Где заказы?» — про продажи, сайты и ошибки бизнеса на реальных примерах. Подписаться