установка через композер
composer require snappsisnappes/json-bitrix-fieldsПример использования
<?php
require_once __DIR__ .'/vendor/autoload.php';
use SnappsiSnappes\JsonBitrixFields;
$webhook = '';
$CompanyConverter = new JsonBitrixFields($webhook,0,'company');
$TypicalRestCompany = [
'TITLE' => 'название какой то компании',
'UF_CRM_STATUS_ID' => 345
];
print_r($CompanyConverter->human_KEY('статус'));
print_r($CompanyConverter->bitrix_KEY_VAL('UF_CRM_STATUS_ID', 345));
print_r($CompanyConverter->human_KEY_VAL('статус', 'активный'));
print_r($CompanyConverter->convert_entity($TypicalRestCompany));Это маленький класс-инструмент поможет в конвертации битриксных полей в человеческий вид и обратно.
Произизводительность O(1).
Принцип работы при инициализации класса -
$CompanyConverter = new JsonBitrixFields($webhook,0,'company');в той же папке что и класс скачается json файл со всеми полями вашего битрикса. Это произойдет следующим образом, сначала скрипт скачает все поля потом сам создаст этот файл.
Формат файла (название вашено битрикса).birtix24.ru_(сущность, может быть lead,company,deal)_fields.json.
далее в коде вы можете использовать этот экземпляр класса для конвертации полей, пример:
print_r($CompanyConverter->human_KEY('статус'));
// выдаст id поля, например у меня такое: UF_CRM_STATUS_IDважное замечание - внутри параметров работает case insensative нечувствительность к регистру, это означает, что можно писать "Статус" или "стаТуС" результат будет такой же, это работает во всех методах класса.
посмотрим все методы:
print_r($CompanyConverter->human_KEY_VAL('статус', 'активный'));
/*
вывод
Array
(
[KEY] => UF_CRM_STATUS_ID
[VAL] => 345
)
*/
print_r($CompanyConverter->bitrix_KEY_VAL('UF_CRM_STATUS_ID', 345));
/*
вывод
Array
(
[KEY] => Статус
[VAL] => Активный
)
*/
$TypicalRestCompany = [
'TITLE' => 'название какой то компании',
'UF_CRM_STATUS_ID' => 345
];
print_r($CompanyConverter->convert_entity($TypicalRestCompany));
/*
вывод
Array
(
[Название компании] => название какой то компании
[Статус] => Активный
)
*/