Bitrix запись своих настроек в settings.php

Порой возникает необходимость вынести некоторые параметры за пределы скрипта в котором они используются в отдельный конфигурационный файл, важно чтобы путь до него был не слишком долог, иначе просто забудется, и чтобы параметры можно было легко загрузить из него. Писать свой загрузчик в итак большой системе не очень хочется, так же нужно придумать где хранить сам файл, поэтому возникает закономерный вопрос, можно ли хранить свои настройки в файле bitrix/.settings.php ? Да, можно.

Добавление

Файл bitrix/.settings.php возвращает массив, для добавления своих настроек, необходимо добавить новый элемент или элементы в этот массив, например:

<?php

return array(
    'utf_mode' => array(
        ...
    ),
    'cache_flags' => array(
        ...
    ),
    'cookies' => array(
        ...
    ),
    'exception_handling' => array(
        ...
    ),
    'connections' => array(
        ...
    ),
    'cache' => array(
        ...
    ),
// блок со своими настройками 'custom_service_api' => array( 'value' => array( 'url' => 'https://precord.ru/api', 'login' => 'user777',
'token' => 'fjesflj309ke9i093ikesf' ) ), );

Получение своих параметров в коде:

$arConfig = \Bitrix\Main\Config\Configuration::getInstance()->get('custom_service_api');
// $arConfig содержит:
array (
  'url' => 'https://precord.ru/api',
  'login' => 'user777',
  'token' => 'fjesflj309ke9i093ikesf',
)

Код проверен на версиях битрикса c 16 по 22. На более ранних версиях не должно возникнуть проблем, если файл bitrix/.settings.php существует.

Примеры использования:

  • Если есть рабочая и тестовая копия сайта, то можно ввести параметр который будет указывать является ли данный сайт рабочим;
  • На одном из сайтов отправка рассылок (выпусков) происходила с другого почтового сервера, чтобы не загружать основной, настройки для почтового сервера рассылок хранились в .settings.php;
  • Хранение реквизитов доступов для каких-либо api;

Пример файла .settings.php со значениями по умолчанию приведен в статье: Bitrix пример файла .settings.php

Рубрики: PHP Bitrix

Если есть вопросы, что-то в статье не понятно или нашли ошибку, напишите об этом в комментариях, все комментарии читаются и по возможности материал будет доработан.
Популярные статьи

Bitrix пример файла .settings.php

В статье приводится пример файла .settings.php со значениями по-умолчанию.

Основные команды Linux

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

Yii2 как получить путь к корню проекта

Узнайте, как правильно получить путь к корню проекта в Yii2 с помощью встроенных инструментов фреймворка.

Форматирование чисел на javascript

В статье приводится пример кода для форматирования чисел на javascript с различными наборами параметров форматирования.

dreamShaper Сравнение стилей художников

Погрузитесь в мир цифрового искусства со Stable Diffusion и DreamShaper! В статье мы сравнили стили известных художников и подобрали ключевые слова, чтобы вы смогли создавать свои шедевры.

Bitrix получить путь до зарегистрированного файла

В статье приводится пример того как можно получить путь до зарегистрированного файла по его ID с помощью метода CFile::getPath($fileId). Так же показано где можно получить ID зарегистрированного файла.

Комментарии

Комментариев пока нет
Данный сайт использует файлы cookies. Продолжая просмотр сайта, вы соглашаетесь с использованием файлов cookies.
ОК