Функция распечатки массива
Готовый код можно скачать в моем репозитории на 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
введем значение
и сохранимся. Как видите, пропало все что должно вызываться после того места где мы вставили код.