Проверка UUID в WordPress с WP_IS_UUID(): примеры и реализация функции

Проверка UUID в WordPress с помощью функции WP_IS_UUID()

Функция WP_IS_UUID() позволяет проверить, является ли заданная строка валидным UUID (Уникальный Идентификатор). UUID используется в программировании для ��никальной идентификации объектов.

Как создать UUID?

Вы можете создать UUID с помощью функции wp_generate_uuid4().

Пример использования

$my_uuid = wp_generate_uuid4();

Время выполнения

  • 1 раз — 0.000104 секунд (быстро)
  • 50000 раз — 0.02 секунд (очень быстро)

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

Функция возвращает true, если строка является UUID, и false, если это не так.

Использование функции

Чтобы проверить строку на UUID, используйте следующую конструкцию:

wp_is_uuid( $uuid, $version );

Параметры

  • $uuid (строка, обязательный) — строка UUID, которую нужно проверить.
  • $version (число, необязательный) — версия UUID. Если не указана, будет проверяться любая версия. Если вы укажете значение, то только версия 4 будет валидной. Если вы пытаетесь указать другую версию, отобразится сообщение 'Только UUID V4 поддерживается в настоящее время'.
    • По умолчанию: null

Примеры

Пример 1: Проверка версии UUID

$uuid = '4c585b5e-5220-4b1d-92e2-316f88210482';

if( wp_is_uuid($uuid) ){
    echo 'Это строка UUID';
}

Пример 2: UUID должен быть только строчными буквами

wp_is_uuid( '4c585b5e-5220-4b1d-92e2-316f88210482' ); // bool(true)
wp_is_uuid( '4C585B5E-5220-4B1D-92E2-316F88210482' ); // bool(false)

Код функции WP_IS_UUID

Вот как реализована функция wp_is_uuid() в WordPress:

function wp_is_uuid( $uuid, $version = null ) {
    if ( ! is_string( $uuid ) ) {
        return false;
    }

    if ( is_numeric( $version ) ) {
        if ( 4 !== (int) $version ) {
            _doing_it_wrong( __FUNCTION__, __( 'Only UUID V4 is supported at this time.' ), '4.9.0' );
            return false;
        }
        $regex = '/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/';
    } else {
        $regex = '/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/';
    }

    return (bool) preg_match( $regex, $uuid );
}

Заключение

Функция WP_IS_UUID() является полезным инструментом для работы с UUID в WordPress. С ее помощью вы можете легко проверить, является ли строка действительной и соответствует ли она определенной версии.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *