Полный цикл в digital

Функция распечатки массива

Готовый код можно скачать в моем репозитории на GitFlic. Cоздадим свою функцию, которая будет принтовать переданный в неё массив в удобном оформлении для разработчика. Открываем init.php на редактирование, вставляем свой код функции:

<?
function PR($var, $all = false, $die = false)
{
    global $USER;
    if (($USER->GetID() == 1) || ($all == true)) {
        $bt = debug_backtrace();
        $bt = $bt[0];
        $dRoot = $_SERVER["DOCUMENT_ROOT"];
        $dRoot = str_replace("/", "\\", $dRoot);
        $bt["file"] = str_replace($dRoot, "", $bt["file"]);
        $dRoot = str_replace("\\", "/", $dRoot);
        $bt["file"] = str_replace($dRoot, "", $bt["file"]);
?>
        <div style='font-size:9pt; color:#000; background:#fff; border:1px dashed #000;'>
            <div style='padding:3px 5px; background:#99CCFF; font-weight:bold;'>File:
                <?= $bt["file"] ?> [
                <?= $bt["line"] ?> ]
            </div>
            <pre style='padding:10px;'><? print_r($var) ?></pre>
        </div>
<?
    }
    if ($die) {
        die;
    }
}
?>

Функция принимает один обязательный параметр, $var в который передаем массив, и два не обязательных параметра, $die и $all.

В моем случае я в начале проверяю пользователя на его ID, то есть только принтую данный массив себе, если желаете вывести массив для администраторов тогда можно воспользоваться методом $USER->IsAdmin() который позволяет распечатать массив для группы администраторов.

Что бы ознакомиться с методом $USER->IsAdmin() более подробно, перейдите в документацию 1С - битрикс, в поиске пропишите IsAdmin, вот у нас есть его описание, мы видим что данный метод делает и какие его параметры использования.

Возвращаемся к нашей функции, пишем оператор ИЛИ, где является данный параметр $all равный true. Это сделано для возможности распечатать массив без авторизации.

Перейдем на тестовую страничку. Пропишем простенький массив:

<?$arr = array('test', 'dwstv', 'denis', 10);?>

И распринтуем его с помощью нашей функции:

<?PR($arr);?>

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

Если мы сейчас разлогинимся то массив нам не отобразится.

Давайте теперь повторно авторизуемся и добавим в нашу функцию дополнительный параметру $all какое ни будь значение, и теперь этот массив будут видеть все пользователи в том числе, не авторизованные.

Тоже самое если нам нужно завершить все операции, тогда для параметра $die введем значение и сохранимся. Как видите, пропало все что должно вызываться после того места где мы вставили код.

Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг