58 lines
1.2 KiB
PHP
58 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Helpers;
|
|
|
|
class MiscHelper
|
|
{
|
|
public static function convertToBytes($val)
|
|
{
|
|
if(empty($val))return 0;
|
|
|
|
$val = trim($val);
|
|
|
|
preg_match('#([0-9]+)[\s]*([a-z]+)#i', $val, $matches);
|
|
|
|
$last = '';
|
|
if(isset($matches[2])){
|
|
$last = $matches[2];
|
|
}
|
|
|
|
if(isset($matches[1])){
|
|
$val = (int) $matches[1];
|
|
}
|
|
|
|
switch (strtolower($last))
|
|
{
|
|
case 'g':
|
|
case 'gb':
|
|
$val *= 1024;
|
|
case 'm':
|
|
case 'mb':
|
|
$val *= 1024;
|
|
case 'k':
|
|
case 'kb':
|
|
$val *= 1024;
|
|
}
|
|
|
|
return (int) $val;
|
|
}
|
|
|
|
public static function gravatarUrl($emailAddress, $size = 48, $default = 'identicon')
|
|
{
|
|
$hash = md5(strtolower(trim($emailAddress)));
|
|
return sprintf('https://www.gravatar.com/avatar/%s?s=%d&d=%s', $hash, $size, $default);
|
|
}
|
|
|
|
public static function randomString($length = 10)
|
|
{
|
|
$seed = 'abcdefghijklmnopqrstuvwxyz01234567890';
|
|
$string = '';
|
|
|
|
while (strlen($string) < $length)
|
|
{
|
|
$string .= substr($seed, rand(0, strlen($seed) - 1), 1);
|
|
}
|
|
|
|
return $string;
|
|
}
|
|
} |