Поиск публикаций
Муниципальные услуги

Получите услугу онлайн

Перейти

Базовые функции

 Вывод

вывести(сообщение)

Выводит строку в стандартный вывод (немедленно).

ПараметрТипОписание
сообщениестрокаТекст для вывода
Пример:
вывести("Привет, мир!");

записатьВывод(сообщение)

Добавляет сообщение в буфер вывода (не выводит немедленно). Буфер может быть сброшен позже.

Пример:
записатьВывод("Буферизованное сообщение");

 Преобразование типов

тип(значение)

Возвращает строку с именем типа значения. Возможные значения: "число", "строка", "логический", "null", "массив", "объект", "функция".

Возвращает: строка
Пример:
$t = тип(123);  // "число"

число(строка)

Преобразует строку в число. Если преобразование невозможно, возвращает 0.

Возвращает: число
Пример:
$n = число("123.5");  // 123.5

строка(значение)

Преобразует значение в строку.

Возвращает: строка
Пример:
$s = строка(123);  // "123"

логический(значение)

Преобразует значение в логический тип. Число 0 и пустая строка дают ложь, всё остальное — истина.

Возвращает: логическое значение
Пример:
$b = логический(1);  // истина

 Математические функции

округлить(число [, разряды])

Округляет число до указанного количества знаков после запятой (по умолчанию 0).

Возвращает: число
Пример:
$r = округлить(3.14159, 2);  // 3.14

случайное([макс] [, мин])

Генерирует случайное число. Без аргументов — число от 0 до 1. С одним аргументом — целое от 0 до макс-1. С двумя — целое от мин до макс-1.

Возвращает: число
Пример:
$r = случайное(1, 10);  // число от 1 до 9

 Время и задержки

время()

Возвращает текущее время в секундах с начала эпохи (Unix timestamp, с плавающей точкой).

Возвращает: число

пауза(миллисекунды)

Приостанавливает выполнение скрипта на указанное количество миллисекунд.

Пример:
пауза(100);  // пауза 0.1 сек

форматДаты(формат [, меткаВремени])

Форматирует дату/время согласно переданному шаблону. Если метка времени не указана, используется текущее время. Поддерживаются стандартные спецификаторы: yyyy (год), MM (месяц), dd (день), HH (час), mm (минуты), ss (секунды).

Возвращает: строка
Пример:
$now = форматДаты("yyyy-MM-dd HH:mm:ss");

 JSON

вJSON(значение)

Сериализует значение в строку JSON.

Возвращает: строка
Пример:
$json = вJSON({ "a": 1, "b": "текст" });

парситьJSON(строка)

Преобразует строку JSON в объект WDSP.

Возвращает: объект
Пример:
$obj = парситьJSON('{"a":1,"b":"текст"}');

 Хэши

md5(строка)

Вычисляет MD5-хеш строки (32 символа в шестнадцатеричном виде).

Возвращает: строка

sha1(строка)

Вычисляет SHA1-хеш строки (40 символов в шестнадцатеричном виде).

Возвращает: строка

 Окружение

окружение(имяПеременной)

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

Возвращает: строка
Пример:
$path = окружение("PATH");

 Выполнение команд

выполнить(команда)

Выполняет системную команду и возвращает её вывод (stdout). В случае ошибки выбрасывает исключение.

Возвращает: строка
Пример:
$out = выполнить("echo Hello");

 Утверждения

утверждение(условие [, сообщение])

Проверяет условие. Если оно ложно, выбрасывает исключение (с указанным сообщением, если оно передано).

Пример:
утверждение($x > 0, "x должно быть положительным");

 Объекты

создатьОбъект()

Создаёт новый пустой объект.

Возвращает: объект
Пример:
$obj = создатьОбъект();
$obj.имя = "Петр";

 Строковые функции (глобальные)

обрезка(строка)

Удаляет пробелы с начала и конца строки.

Возвращает: строка

верхний(строка)

Преобразует строку в верхний регистр.

Возвращает: строка

нижний(строка)

Преобразует строку в нижний регистр.

Возвращает: строка

содержит(строка, подстрока)

Возвращает истину, если строка содержит указанную подстроку.

Возвращает: логическое значение

начинаетсяС(строка, префикс)

Возвращает истину, если строка начинается с указанного префикса.

Возвращает: логическое значение

заканчиваетсяНа(строка, суффикс)

Возвращает истину, если строка заканчивается указанным суффиксом.

Возвращает: логическое значение

позиция(строка, подстрока)

Возвращает индекс первого вхождения подстроки в строке, или -1, если не найдено.

Возвращает: число

 Исключения

бросить значение

Выбрасывает исключение с произвольным значением (может быть строка, число, объект).

Пример:
бросить "Ошибка!";

Перехват исключений выполняется конструкцией попытка ... ловушка(переменная) ....

Пример:
попытка {
    бросить "Тест";
} ловушка($e) {
    вывести($e);
}

 Цикл для каждого

для каждого (переменная из массив или объект) { ... }

Перебирает элементы массива или свойства объекта. Для массива — итерация по значениям, для объекта — по значениям свойств.

Пример по массиву:
для каждого ($число из [1, 2, 3]) {
    вывести($число);
}
Пример по объекту:
для каждого ($знач из { a: 1, b: 2 }) {
    вывести($знач);
}

 Константы

Константы объявляются ключевым словом константа и не могут быть изменены после инициализации.

Пример:
константа ПИ = 3.14159;
константа НАЗВАНИЕ = "WDSP";

 Арифметика

WDSP поддерживает автоматическое преобразование типов в арифметических операциях:

  • число + строка → конкатенация (число преобразуется в строку).
  • строка + число → конкатенация.
  • число - строка → строка преобразуется в число, выполняется вычитание.
  • число * строка → строка в число, умножение.
  • число / строка → строка в число, деление.
  • строка % число → строка в число, остаток от деления.
Примеры:
1 + "2"  // "12"
"3" + 4   // "34"
5 - "2"  // 3
"10" / 2   // 5
2 * "3"  // 6
"7" % 3   // 1

 Импорт/Экспорт модулей

экспортировать(объект)

Экспортирует объект для использования в других модулях (обычно в конце файла).

Пример:
экспортировать({ "имя": "МойМодуль", "версия": 1.0 });

импортироватьСинх(путь)

Синхронно загружает модуль по указанному пути и возвращает экспортированный объект.

Возвращает: объект
Пример:
$mod = импортироватьСинх("my_module.wdsp");

импортировать(путь)

Асинхронная версия импортироватьСинх (возвращает результат немедленно, но загрузка может быть отложена).