method public

Signer::unpack()

Класс: \Bitrix\Main\Security\Sign\Signer

Сигнатура

public unpack(string $value[, int $limit = 2 ]) : array<string|int, mixed>

Описание

Простой пример для разделителя ".":

// Распаковка всех значений:
unpack('test.all.values', 0) -> ['test', 'all', 'values']

// Распаковка 2 значений (по умолчанию). Первый элемент содержит остаток строки.
unpack('test.all.values') -> ['test.all', 'values']

// Исключение, если разделитель отсутствует
unpack('test.all values', 3) -> throws BadSignatureException

Параметры

$value string
Строка для распаковки.
$limit int = 2
Если $limit === 0 — распаковываются все значения, по умолчанию — 2.

Возвращаемое значение

array<string|int, mixed>

Как применяется в Signer

Signer::unpack() — метод класса \Bitrix\Main\Security\Sign\Signer модуля «Главный модуль».

Метод объекта: сначала нужен экземпляр Signer.

use Bitrix\Main\Security\Sign\Signer;

/** @var Signer $object */
$value = '';
$result = $object->unpack($value);
// $result: array<string|int, mixed>

Другие методы Signer

  • getSeparator() Возвращает разделитель, используемый для упаковки/распаковки.
  • getSignature() Возвращает подпись сообщения.
  • pack() Упаковывает значения массива в одну строку: pack(['test', 'all', 'values']) -> 'test.all.values'
  • setKey() Устанавливает ключ для подписи.
  • setSeparator() Устанавливает разделитель, используемый для упаковки/распаковки.
  • sign() Подписывает сообщение, возвращает строку в формате "{message}{separator}{signature}".
  • unsign() Проверяет подпись сообщения и возвращает исходное сообщение.
  • validate() Простая проверка подписи сообщения.

unpack() есть и у других классов модуля «Главный модуль»: TimeSigner.

Исходный файл: source/main/lib/security/sign/signer.php:300

Что будем искать? Например,Продвижение