Существует ли собственный или недорогой способ проверить на длину строки в байтах в PHP?
Длина строки (текстовых данных) определяется положением символа NULL, который отмечает конец. В случае двоичных данных NULL может находиться и часто находится в середине данных.
Вы не проверяете длину двоичных данных. Вы должны знать ее заранее. В вашем случае длина равна 16 (байтов, а не битов, если это UUID).
Что касается достоверности UUID, любое 16-байтовое значение является достоверным UUID, так что вам не повезло.
На php.org, кто-то был достаточно любезен, чтобы создать эту функцию . Просто умножьте на 8, и вы получите столько битов, сколько было в этой строке, поскольку функция возвращает байты.