ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
UUIDUtil.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Sabre\DAV;
4 
16 class UUIDUtil {
17 
26  static function getUUID() {
27 
28  return sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
29  // 32 bits for "time_low"
30  mt_rand(0, 0xffff), mt_rand(0, 0xffff),
31 
32  // 16 bits for "time_mid"
33  mt_rand(0, 0xffff),
34 
35  // 16 bits for "time_hi_and_version",
36  // four most significant bits holds version number 4
37  mt_rand(0, 0x0fff) | 0x4000,
38 
39  // 16 bits, 8 bits for "clk_seq_hi_res",
40  // 8 bits for "clk_seq_low",
41  // two most significant bits holds zero and one for variant DCE1.1
42  mt_rand(0, 0x3fff) | 0x8000,
43 
44  // 48 bits for "node"
45  mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
46  );
47  }
48 
55  static function validateUUID($uuid) {
56 
57  return preg_match(
58  '/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/i',
59  $uuid
60  ) !== 0;
61 
62  }
63 
64 }
static validateUUID($uuid)
Checks if a string is a valid UUID.
Definition: UUIDUtil.php:55
UUID Utility.
Definition: UUIDUtil.php:16
static getUUID()
Returns a pseudo-random v4 UUID.
Definition: UUIDUtil.php:26