Функции

PHP-функции фреймворка Webasyst

Содержание...
  • ifempty

    Возвращает значение указанной непустой переменной либо, если переменная пуста, значение по умолчанию.

  • ifset

    Возвращает значение существующей переменной или элемента массива либо, если переменная или элемент массива не существуют, значение по умолчанию.

  • wa

    Загружает в оперативную память конфигурацию указанного приложения.

  • wa_array_diff_r

    Рекурсивно вычисляет разность между двумя многоуровневыми массивами.

  • wa_backend_url

    Возвращает относительный URL бекенда.

  • wa_currency

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

  • wa_currency_html

    Возвращает отформатированное значение суммы в указанной валюте с использованием HTML-символа валюты.

  • wa_date

    Возвращает отформатированное значение даты и времени.

  • wa_dump

    Выводит на страницу отладочную информацию об указанных значениях (каждое с новой строки) и прерывает выполнение PHP-скрипта.

  • wa_dumpc

    Выводит на страницу отладочную информацию об указанных значениях без прерывания PHP-скрипта.

  • wa_header

    Возвращает HTML-код главного меню бекенда.

  • wa_is_int

    Проверяет, является ли указанное значение целочисленным либо строкой, содержащей только одно целое число.

  • wa_make_pattern

    Формирует регулярное выражение из строки символов.

  • wa_parse_date

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

  • wa_url

    Возвращает относительный корневой URL Webasyst.

  • wao

    Возвращает экземпляр класса указанного конструктора для единоразового однострочного вызова его публичного метода.

function ifempty (&$var, $def = null)

Возвращает значение указанной непустой переменной либо, если переменная пуста, значение по умолчанию. Проверка выполняется PHP-функцией empty(). Если переменная не существовала перед вызовом функции, она создается с пустым значением.

Параметры

  • $var

    Переменная, значение которой необходимо проверить.

  • $def

    Значение по умолчанию, возвращаемое в случае, если значение переменной определено как пустое.

Пример

$var = 1;
ifempty($var); //возвращает непустое значение переменной 1
    
$var = 0;
ifempty($var); //возвращает стандартное значение по умолчанию null
    
$var = 0;
ifempty($var, array()); //возвращает пользовательское значение по умолчанию array()

function ifset (&$var, $def=null)

Возвращает значение существующей переменной или элемента массива либо, если переменная или элемент массива не существуют, значение по умолчанию. Существование переменной выполняется PHP-функцией isset(). Если переменная не существовала перед вызовом функции, она создается с пустым значением.

Параметры

  • $var

    Переменная или элемент массива, существование которых нужно проверить.

  • $def

    Значение по умолчанию, возвращаемое в случае, если переменная или элемент массива не существует.

Пример

//переменная $var не определена
//функция возвращает значение по умолчанию
ifset($var); //null

//значение переменной $var равно null
//функция возвращает значение по умолчанию
$var = null;
ifset($var, array()); //пользовательское значение по умолчанию array()


//значение переменной $var не равно null
//функция возвращает значение переменной
$var = 1;
ifset($var, array()); //1

function wa ($name = null, $set_current = false)

Выполняет метод waSystem::getInstance() для загрузки в оперативную память конфигурации указанного приложения; в том числе его PHP-классов.

Параметры

  • $name

    ID приложения.

  • $set_current

    Флаг, требующий активации локализации указанного приложения после вызова функции.

Пример

//вызов функции делает доступными
//только PHP-классы приложения 'blog'
wa('blog');

//вызов функции делает доступными
//PHP-классы И локализацию приложения 'blog'
wa('blog', true);

function wa_array_diff_r ($value1, $value2, &$diff)

Рекурсивно вычисляет разность между двумя многоуровневыми массивами, сохраняет разность в переменную $diff, передаваемую по ссылке, и возвращает булево значение, обозначающее, различаются ли массивы друг от друга или нет.

Параметры

  • $value1

    Массив №1.

  • $value2

    Массив №2.

  • $diff

    Переменная для хранения разности массивов.

Пример

$different = wa_array_diff_r($array1, $array2, $difference);
wa_dump($different); //выясняем, были ли найдены различия
wa_dump($difference); //вывод найденных различий

function wa_backend_url ()

Возвращает относительный URL бекенда. Учтите, что он может отличаться от /webasyst/.

Пример

wa_backend_url();

Результат

/webasyst/

function wa_currency ($n, $currency, $format = '%{s}')

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

Параметры

  • $n

    Число, обозначающее сумму денег.

  • $currency

    Строковый ISO3-код валюты.

  • $format

    Формат отображения суммы в валюте, поддерживаемый методом waCurrency::format(). По умолчанию используется обозначение формата '%{s}'.

Пример

wa_currency (123456.78, 'RUB');

Результат

123 456,78 руб.

function wa_currency_html ($n, $currency, $format = '%{h}')

Возвращает отформатированное значение суммы в указанной валюте с использованием HTML-символа валюты, если в свойствах валюты есть такой символ. Если HTML-символа у валюты нет, то по умолчанию будет использовано стандартное сокращенное обозначение валюты (если не будет указано другое обозначение формата для параметра $format).

Параметры

  • $n

    Число, обозначающее сумму денег.

  • $currency

    Строковый ISO3-код валюты.

  • $format

    Формат отображения суммы в валюте, поддерживаемый методом waCurrency::format(). По умолчанию используется обозначение формата '%{h}'.

Пример

wa_currency_html (123456.78, 'RUB');
wa_currency_html (123456.78, 'USD');

Результат

123 456,78 <span class="ruble">Р</span>
$123 456,78

function wa_date ($format, $time = null, $timezone = null, $locale = null)

Возвращает отформатированное значение даты и времени с использованием метода waDateTime::format().

Параметры

  • $format

    Формат представления даты/времени. Допускается использовать следующие обозначения формата:

    • humandatetime: подставляет слова «вчера», «сегодня», «завтра» вместо соответствующих дат относительно текущей даты пользователя
    • humandate: возвращает дату в формате d f Y, предназначенном для метода waDateTime::date() (перечисленные далее форматы предназначены для использования этим же методом)
    • date: возвращает дату в формате Y-m-d
    • time: возвращает дату в формате H:i
    • fulltime: возвращает дату в формате H:i:s
    • datetime: возвращает дату в формате Y-m-d H:i
    • fulldatetime: возвращает дату в формате Y-m-d H:i:s
    • timestamp: возвращает дату в формате U
  • $time

    Метка времени. Если не указано, используется текущая метка времени.

  • $timezone

    Строковый идентификатор временной зоны. Если не указано, используется автоматическое определение временной зоны.

  • $locale

    Строковый идентификатор локали. Если не указано, используется автоматическое определение локали.

Пример

wa_date('humandatetime');

Результат

Сегодня 17:11

function wa_dump ()

Выводит на страницу отладочную информацию об указанных значениях (каждое с новой строки) и прерывает выполнение PHP-скрипта.

Параметры

  • $var1, var2, ...

    Любое количество значений любого типа, перечисленные через запятую (как аргументы функции).

Пример

$var1 = 1;
$var2 = 2;
wa_dump($var1, $var2);

Пример

1
2

function wa_dumpc ()

Выводит на страницу отладочную информацию об указанных значениях без прерывания PHP-скрипта.

Параметры

  • $var1, var2, ...

    Любое количество значений любого типа, перечисленные через запятую (как аргументы функции).

Пример

$var1 = 1;
$var2 = 2;
wa_dumpc($var1, $var2);

Пример

1
2

function wa_header ()

Возвращает HTML-код главного меню бекенда.

function wa_is_int ($val)

Проверяет, является ли указанное значение целочисленным либо строкой, содержащей только одно целое число.

Параметры

  • $val

    Проверяемое значение.

Пример

wa_is_int(null);  //false
wa_is_int(false); //false
wa_is_int(true);  //false
wa_is_int(0);     //true
wa_is_int('0');   //true
wa_is_int(1);     //true
wa_is_int('1');   //true
wa_is_int(0.1);   //false
wa_is_int('0.1'); //false

function wa_make_pattern ($string, $separator = '/')

Формирует регулярное выражение из строки символов.

Параметры

  • $string

    Строка, из которой нужно сформировать регулярное выражение.

  • $separator

    Символ, который должен быть экранирован обратной косой чертой \ в полученном регулярном выражении.

Пример

wa_make_pattern('test');
wa_make_pattern('test|');
wa_make_pattern('test|', '|');

Результат

'test';
'test|'
'test\|'

function wa_parse_date ($format, $string, $timezone = null, $locale = null)

Возвращает (с использованием метода waDateTime::parse()) стандартное для PHP строковое представление времени, указанного в одном из форматов, которые используются во фреймворке.

Параметры

  • $format

    Строковый идентификатор формата, описанный для метода waDateTime::format(), кроме ''humandatetime'.

  • $string

    Строковое представление времени, отформатированное в соответствии со строкой формата, указанной в параметре $format.

  • $timezone

    Строковый идентификатор временной зоны. Если не указано, используется автоматическое определение временной зоны.

  • $locale

    Строковый идентификатор локали. Если не указано, используется автоматическое определение локали.

Пример

wa_parse_date ('humandate', 'November 8, 2013', null, 'en_US');

Результат

2013-11-08

function wa_url ()

Возвращает относительный корневой URL Webasyst.

Пример

wa_url();

Результат

/

function wao ($o)

Возвращает экземпляр класса указанного конструктора для единоразового однострочного вызова его публичного метода.

Параметры

  • $o

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

Пример

$settings_html = wao(new myappBackendSettingsAction())->display();