You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
955 B
PHP
42 lines
955 B
PHP
<?php
|
|
|
|
//include "brain/data/Auth.inc.php";
|
|
|
|
class StringTools
|
|
{
|
|
public static function createUUID()
|
|
{
|
|
if (function_exists("com_create_guid") === true) {
|
|
return trim(com_create_guid(), "{}");
|
|
}
|
|
|
|
return sprintf(
|
|
"%04X%04X-%04X-%04X-%04X-%04X%04X%04X",
|
|
mt_rand(0, 65535),
|
|
mt_rand(0, 65535),
|
|
mt_rand(0, 65535),
|
|
mt_rand(16384, 20479),
|
|
mt_rand(32768, 49151),
|
|
mt_rand(0, 65535),
|
|
mt_rand(0, 65535),
|
|
mt_rand(0, 65535)
|
|
);
|
|
}
|
|
|
|
public static function randomString(int $length)
|
|
{
|
|
$alphanum =
|
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
$special = '*&!@%^#$';
|
|
$alphabet = $alphanum . $special;
|
|
$random = openssl_random_pseudo_bytes($length);
|
|
$alphabet_length = strlen($alphabet);
|
|
$string = "";
|
|
for ($i = 0; $i < $length; ++$i) {
|
|
$string .= $alphabet[ord($random[$i]) % $alphabet_length];
|
|
}
|
|
|
|
return $string;
|
|
}
|
|
}
|