36 public static function contains($string, $search)
38 if (!empty($string) && !empty($search)) {
39 return stripos($string, $search) !==
false;
55 if ($string ===
null || $string ===
'') {
59 return (substr($string, 0, strlen($search)) === $search);
70 public static function endWith($string, $search)
72 $length = strlen($search);
73 $start = $length * -1;
75 return (substr($string, $start) === $search);
87 return ctype_alnum($string);
99 public static function random($length = 32, $withNumeric =
true)
101 $characters =
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
103 $characters .=
'0123456789';
106 $charactersLength = strlen($characters);
110 for ($i = 0; $i < $length; $i++) {
111 $randomString .= $characters[random_int(0, $charactersLength - 1)];
113 }
catch (Exception $e) {
114 Log::error(
'Failed to generate cryptographically secure random string: ' . $e->getMessage());
118 return $randomString;
133 return bin2hex(random_bytes($length));
134 }
catch (Exception $e) {
135 Log::error(
'Failed to generate secure token: ' . $e->getMessage());
152 return random_bytes($length);
153 }
catch (Exception $e) {
154 Log::error(
'Failed to generate secure bytes: ' . $e->getMessage());
static error($data, $file=null)
static contains($string, $search)
static generateSecureToken($length=32)
static isAlphanumeric($string)
static startWith($string, $search)
static random($length=32, $withNumeric=true)
static endWith($string, $search)
static generateSecureBytes($length=32)