====== Объект w_format ======
Класс форматирования данных
===== Расположение =====
''core/format.php''
===== Статичные методы =====
==== age ====
w_format::**age**(//birth//, //now//)
Форматирование возраста
^аргумент^Описание^Тип^По-умолчанию^
|birth|Дата рождения|[[ядро:w_date|Объект w_date]] обязательное| |
|now|Дата расчета|[[ядро:w_date|Объект w_date]]| Текущая дата |
^Возвращает|отформатированный возраст|string| |
$date=w_date::load('00:00:00 25.04.1988');
$now=w_date::load('00:00:05 01.10.2018');
w_format::age($date,$now); //30 лет
==== arrayMerge ====
w_format::**arrayMerge**(//master_array//, //slave_array//)
Объединение массивов с учетом типов.
^аргумент^Описание^Тип^По-умолчанию^
|master_array|Основной массив|[]| |
|slave_array|Сливаемый массив|[]| |
^Возвращает|Объединенный массив|[]| |
==== durabilityDateText ====
w_format::**durabilityDateText**(//date//,//now//,//exp//)
Форматирование периода времени
^аргумент^Описание^Тип^По-умолчанию^
|date|Дата|[[ядро:w_date|Объект w_date]] обязательное| |
|now|Дата расчета|[[ядро:w_date|Объект w_date]]| Текущая дата |
|exp|Учитывать только большую единицу времени|boolean|Нет|
^Возвращает|отформатированное период|string| |
$date=w_date::load('00:00:00 1.01.2018');
$now=w_date::load('00:00:05 2.02.2018');
w_format::durabilityDateText($date,$now); //1 день 5 минут
w_format::durabilityDateText($date,$now,true); //1 день
==== email ====
w_format::**email**(//email//)
Проверка формата E-mail
^аргумент^Описание^Тип^По-умолчанию^
|email|E-mail|string обязательное| |
^Возвращает|E-mail или false в случае неверного формата|string| |
==== float ====
w_format::**float**(//float//,//min//,//max//)
Проверка формата числа с плавающей точкой
^аргумент^Описание^Тип^По-умолчанию^
|float|Число с плавающей точкой|string обязательное| |
|min|Минимальное значение|float| |
|max|Максимальное значение|float| |
^Возвращает|Число или false в случае неверного формата или выхода за пределы значений|float| |
==== inn ====
w_format::**inn**(//inn//,//count//)
Проверка формата 10 или 12-значного ИНН (идентификационного номера налогоплательщика).
^аргумент^Описание^Тип^По-умолчанию^
|inn|ИНН|string обязательное| |
|count|Количество знаков ИНН (0 - любое, 10 - юридическое, 12 - физическое лицо) |int|0|
^Возвращает|ИНН или false в случае неверного формата|string| |
==== int ====
w_format::**int**(//int//,//min//,//max//)
Проверка формата целого числа
^аргумент^Описание^Тип^По-умолчанию^
|int|Число|string обязательное| |
|min|Минимальное значение|int| |
|max|Максимальное значение|int| |
^Возвращает|Число или false в случае неверного формата или выхода за пределы значений|int| |
==== intText ====
w_format::**intText**(//int//,//gender//)
Число прописью
^аргумент^Описание^Тип^По-умолчанию^
|int|Число|int обязательное| |
|gender|Род единицы измерения, false - мужской род, true - женский род|boolean|false|
^Возвращает|Число прописью|string| |
==== ip ====
w_format::**ip**(//ip//)
Проверка формата ip-адреса v4
^аргумент^Описание^Тип^По-умолчанию^
|ip|ip адрес|string обязательное| |
^Возвращает|ip или false в случае неверного формата|string| |
==== lastDateText ====
w_format::**lastDateText**(//date//,//now//,//exp//)
Форматирование прошедшего времени
^аргумент^Описание^Обязательное^По-умолчанию^
|date|Дата: объект|[[ядро:w_date|Объект w_date]] обязательное| |
|now|Дата расчета|[[ядро:w_date|Объект w_date]]| Текущая дата |
|exp|Учитывать только большую единицу времени|boolean|false|
^Возвращает|отформатированное время|string| |
$date=w_date::load('00:00:00 1.01.2018');
$now=w_date::load('00:00:05 2.02.2018');
w_format::lastDateText($date,$now); //1 день 5 минут назад
w_format::lastDateText($date,$now,true); //вчера
==== link ====
w_format::**link**(//url//, //relative_url//)
Форматирует ссылки, в том числе относительные.
^аргумент^Описание^Тип^По-умолчанию^
|url|url назначения|string обязательное| |
|relative_url|url, относительно которого необходимо применить формат в случае отсутствия хоста и схемы|string| |
^Возвращает|отформатированный url|string| |
echo w_format::link('http://wmart.web152.ru/catalog?filter'); //Выведет "http://wmart.web152.ru/catalog?filter"
echo w_format::link('//wmart.web152.ru'); //Выведет "http://wmart.web152.ru"
echo w_format::link('/product','http://wmart.web152.ru/catalog'); //Выведет "http://wmart.web152.ru/product"
echo w_format::link('product','http://wmart.web152.ru/catalog'); //Выведет "http://wmart.web152.ru/catalog/product"
==== number ====
w_format::**number**(//price//, //round//)
Форматирование числа с разделением разрядов
^аргумент^Описание^Тип^По-умолчанию^
|price|Цена|float обязательное| |
|round|Количество знаков округления|int|-1: не округлять|
^Возвращает|Форматированную цену|string| |
w_format::number('1250000'); //1 250 000
==== phone ====
w_format::**phone**(//phone//,//format//)
Проверка формата номера телефона и форматирование
^аргумент^Описание^Тип^По-умолчанию^
|phone|Телефон|string обязательное| |
|format|Отформатировать телефон|boolean| |
^Возвращает|Отформатированное значение или false при неверном формате|string| |
w_format::phone('89991234567'); //Выведет "79991234567"
w_format::phone('89991234567',true); //Выведет "+7 (999) 123-45-67"
==== priceProfit ====
w_format::**priceProfit**(//old_price//,//price//)
Расчет процента скидки
^аргумент^Описание^Тип^По-умолчанию^
|old_price|Старая цена|float обязательное| |
|price|Новая цена|float обязательное| |
^Возвращает|Процент скидки|string| |
==== priceText ====
w_format::**priceText**(//price//)
Цена прописью
^аргумент^Описание^Тип^По-умолчанию^
|price|Цена|float обязательное| |
^Возвращает|Цену прописью|string| |
==== text ====
w_format::**text**(//string//,//min//,//max//,//pattern//)
Фильтрация строки по символам
^аргумент^Описание^Тип^По-умолчанию^
|string|Строка|string обязательное| |
|min|Минимальная длина строки|int| |
|min|Максимальная длина строки|int| |
|pattern|Разрешенные символы|string|абвгдежзийклмнопрстуфхцчшщъыьэюяabcdefghiklmnopqrstuvwxyzёЁ0123456789_ +-,;$"./|
^Возвращает|Отфильтрованную строку или false если строка не соответствует длине|string| |
Например при валидации поля с текстом с ограниченным кол-вом символов
==== unitMorph ====
w_format::**unitMorph**(//number//, //val1//, //val2//, //val3//)
Выбор склонения существительного по числу
^аргумент^Описание^Тип^По-умолчанию^
|number|Число|int обязательное| |
|val1|Склонение "ноль штук"|string обязательное| |
|val2|Склонение "одна штука"|string обязательное| |
|val2|Склонение "две штуки"|string обязательное| |
^Возвращает|соответствующее существительное|string| |
==== url ====
w_format::**url**(//url//, //relative_url//)
Форматирует url
^аргумент^Описание^Тип^По-умолчанию^
|url|url назначения|string обязательное| |
^Возвращает|отформатированный url или false при ошибке|string| |
==== zodiac ====
w_format::**zodiac**(//date//)
Получить знак зодиака
^аргумент^Описание^Тип^По-умолчанию^
|date|Дата рождения|[[ядро:w_date|Объект w_date]]| |
^Возвращает|Знака зодиака|string| |
==== zodiacChinese ====
w_format::**zodiacChinese**(//date//)
Получить знак китайского гороскопа
^аргумент^Описание^Тип^По-умолчанию^
|date|Дата рождения|[[ядро:w_date|Объект w_date]]| |
^Возвращает|Знак китайского гороскопа|string| |