• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/util.php
  • Класс: BitrixTasksUtil
  • Вызов: Util::generateUUID
static function generateUUID($brackets = true)
{
	$uuid = '';

	if ($brackets)
	{
		$uuid .= '{';
	}

	$uuid .= sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
		// 32 bits for "time_low"
		mt_rand(0, 0xffff), mt_rand(0, 0xffff),

		// 16 bits for "time_mid"
		mt_rand(0, 0xffff),

		// 16 bits for "time_hi_and_version",
		// four most significant bits holds version number 4
		mt_rand(0, 0x0fff) | 0x4000,

		// 16 bits, 8 bits for "clk_seq_hi_res",
		// 8 bits for "clk_seq_low",
		// two most significant bits holds zero and one for variant DCE1.1
		mt_rand(0, 0x3fff) | 0x8000,

		// 48 bits for "node"
		mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
	);

	if ($brackets)
	{
		$uuid .= '}';
	}

	return ($uuid);
}