feat(Uuid): add module
This commit is contained in:
parent
53b5ebcb43
commit
86c2321fab
3 changed files with 39 additions and 1 deletions
|
@ -23,7 +23,8 @@ return [
|
|||
'hash' => [],
|
||||
'baseconverter' => [
|
||||
'alias' => ['encode', 'decode']
|
||||
]
|
||||
],
|
||||
'uuid' => []
|
||||
],
|
||||
'auth' => [
|
||||
'root' => 'password'
|
||||
|
|
27
modules/uuid/uuid.php
Normal file
27
modules/uuid/uuid.php
Normal file
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
|
||||
header("Content-Type: text/plain");
|
||||
|
||||
function guidv4($data = null) {
|
||||
// Generate 16 bytes (128 bits) of random data or use the data passed into the function.
|
||||
$data = $data ?? random_bytes(16);
|
||||
assert(strlen($data) == 16);
|
||||
|
||||
// Set version to 0100
|
||||
$data[6] = chr(ord($data[6]) & 0x0f | 0x40);
|
||||
// Set bits 6-7 to 10
|
||||
$data[8] = chr(ord($data[8]) & 0x3f | 0x80);
|
||||
|
||||
// Output the 36 character UUID.
|
||||
return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
|
||||
}
|
||||
|
||||
$inter = guidv4();
|
||||
|
||||
$output = $inter;
|
||||
if (isset($_GET['compact']) && $_GET['compact'] === 'yes') {
|
||||
$output = str_replace('-', '', $inter);
|
||||
}
|
||||
|
||||
echo $output;
|
||||
|
10
modules/uuid/uuid_help.php
Normal file
10
modules/uuid/uuid_help.php
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'actions' => [
|
||||
[
|
||||
'name' => 'Generate compact uuid',
|
||||
'path' => '/?compact=yes'
|
||||
]
|
||||
]
|
||||
];
|
Loading…
Reference in a new issue