Я использую следующие две функции для преобразования uuid в двоичный и обратно. Однако преобразованное значение uuid не возвращает старое значение после преобразования в двоичное. что мне делать или я не понимаю концепцию здесь.
function uuid_to_bin($uuid){
$bin_uuid = pack("H*", str_replace('-', '', $uuid));
return $bin_uuid;
}
function bin_to_uuid($binid)
{
$arr= unpack("H*", $binid);
$string = $arr['1'];
$string = preg_replace("/([0-9a-f]{8})([0-9a-f]{4})([0-9a-f]{4})
([0-9a-f]{4})([0-9a-f]{12})/", "$1-$2-$3-$4-$5", $string);
return $string;
}
хорошо, спасибо .. вот что я хотел.
На самом деле ваш код работает, может, у вас какой-то недействительный? 3v4l.org/a769C






Используйте https://github.com/ramsey/uuid, который уже правильно выполняет преобразования.
Вам следует использовать популярный, зрелый и активно поддерживаемый пакет ramsey / uuid вместо того, чтобы катить свой собственный.