推荐:《php视频教程》
实用函数集合
<?phpif (!function_exists('number_random')) {    /**     * 生成随机数字串     *     * @param int $length     * @return string     */    function number_random($length = 6)    {        $result = '';        for ($i = 0; $i < $length; $i++) {            $result .= mt_rand(0, 9);        }        return $result;    }}if (!function_exists('string_random')) {    /**     * 生成随机字符串     *     * @param int $length     * @return string     */    function string_random($length = 6)    {        $result = '';        for ($i = 0; $i < $length; $i++) {            $rand = mt_rand(1, 3);            switch ($rand) {                case 1:                    $result .= mt_rand(0, 9);                    break;                case 2:                    $result .= chr(mt_rand(65, 90));                    break;                default:                    $result .= chr(mt_rand(97, 122));                    break;            }        }        return $result;    }}if (!function_exists('get_order_number')) {    /**     * 生成订单号     *     * @param int $length     * @return string     */    function get_order_number($length = 32)    {        $date = date('ymdhis');        $micro = explode('.', microtime(true))[1];        $rand = string_random($length - (strlen($date) + strlen($micro)));        return $date . $micro . $rand;    }}if (!function_exists('check_bank_card')) {    /**     * 验证银行卡号     *     * @param string $card     * @return bool     */    function check_bank_card(string $card)    {        $arr_no = str_split($card);        $last_n = $arr_no[count($arr_no) - 1];        krsort($arr_no);        $i = 1;        $total = 0;        foreach ($arr_no as $n) {            if ($i % 2 == 0) {                $ix = $n * 2;                if ($ix >= 10) {                    $nx = 1 + ($ix % 10);                    $total += $nx;                } else {                    $total += $ix;                }            } else {                $total += $n;            }            $i++;        }        $total -= $last_n;        $total *= 9;        return $last_n == ($total % 10);    }}if (!function_exists('blocking_lock')) {    /**     * 阻塞锁     *     * @param string $lock_name 锁名字     * @param int $valid 有效秒数     * @return mixed     */    function blocking_lock(string $lock_name, $valid = 3600)    {        $lock_key = 'blocking_lock';        while ($exp = redis::hget($lock_key, $lock_name)) {            if ($exp < microtime(true)) {                redis::hdel($lock_key, $lock_name);            }            usleep(10);        }        return redis::hset($lock_key, $lock_name, microtime(true) + $valid);    }}if (!function_exists('blocking_unlock')) {    /**     * 释放阻塞锁     *     * @param string $lock_name     * @return mixed     */    function blocking_unlock(string $lock_name)    {        $lock_key = 'blocking_lock';        return redis::hdel($lock_key, $lock_name);    }}if (!function_exists('random_color')) {    /**     * 随机十六进制颜色     *     * @return string     */    function random_color()    {        $str = '#';        for ($i = 0; $i < 6; $i++) {            $randnum = rand(0, 15);            switch ($randnum) {                case 10:                    $randnum = 'a';                    break;                case 11:                    $randnum = 'b';                    break;                case 12:                    $randnum = 'c';                    break;                case 13:                    $randnum = 'd';                    break;                case 14:                    $randnum = 'e';                    break;                case 15:                    $randnum = 'f';                    break;            }            $str .= $randnum;        }        return $str;    }}if (!function_exists('get_hour_history')) {    /**     * 获取当日历史小时     *     * @return array     */    function get_hour_history()    {        $history = [];        for ($i = 0; $i <= date('h'); $i++) {            $history[] = $i;        }        return $history;    }}
以上就是php实用函数集合的详细内容。
   
 
   