Loading... # [php 插入mongodb uuid类型](https://blog.p2hp.com/archives/4546) ```php $luuid ='e4eaaaf2-d142-11e1-b3e4-080027620cdd'; //格式一定要正确 » RFC 4122. $uuid='0123456789abcdef'; $id = new \MongoDB\BSON\Binary($uuid,\MongoDB\BSON\Binary::TYPE_UUID); ``` 查mongodb的LUUID类型为以下代码: ```php $luuid= str_replace("-","",$luuid); $id= new \MongoDB\BSON\Binary(hex2bin($luuid),\MongoDB\BSON\Binary::TYPE_OLD_UUID); $id=bin2hex($id); var_dump($id); ``` luuid 转为uuid: ```php $luuid=二进制字符 $id=bin2hex($luuid); $a = substr($id,6, 2).substr($id,4, 2).substr($id,2, 2).substr($id,0, 2); $b = substr($id,10, 2).substr($id,8, 2); $c = substr($id,14, 2).substr($id,12, 2); $d = substr($id,16, 16); $id = $a.$b.$c.$d; $id = substr($id,0, 8).'-'.substr($id,8, 4).'-'.substr($id,12, 4).'-'.substr($id,16, 4).'-'.substr($id,20, 12); var_dump($id); ``` uuid与luuid互转: ```php publicfunctionreplayLuuid($id,$type) { $id = str_replace("-","",$id); $a = substr($id,6, 2).substr($id,4, 2).substr($id,2, 2).substr($id,0, 2); $b = substr($id,10, 2).substr($id,8, 2); $c = substr($id,14, 2).substr($id,12, 2); $d = substr($id,16, 16); $id = $a.$b.$c.$d; if ($type =='to') { $id= new \MongoDB\BSON\Binary(hex2bin($id),\MongoDB\BSON\Binary::TYPE_OLD_UUID); }else{ $id = substr($id,0, 8).'-'.substr($id,8, 4).'-'.substr($id,12, 4).'-'.substr($id,16, 4).'-'.substr($id,20, 12); } return $id; } ``` 最后修改:2023 年 08 月 10 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏