• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > PHP实用函数集合

PHP实用函数集合

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了PHP函数,函数集合等相关知识,希望对您有所帮助

实用函数集合,常用于各类数据验证、订单号和随机字符生成等场景使用。都是比较实用的,还是比较可以的~~

<?php if (!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;    }}



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 详解php中函数的引用传递和返回 (附代码)
  • PHP中怎么解决serialize函数中文乱码的问题
  • PHP实用函数集合

相关文章

  • 2022-04-29PHP怎么将错误输出到文件
  • 2022-04-29PHP使用PHPAnalysis提取关键字中文分词的方法是什么
  • 2022-04-29怎么解决PHP高并发(商品秒杀)问题?两种解决方案分享
  • 2022-04-29广告联盟被屏蔽后显示图片链接广告方法代码
  • 2022-04-29php htmlentities 乱码怎么办
  • 2022-04-29一分钟学会PHP中关于封装验证码(下)
  • 2022-04-29设计师应该从四个方面优化网站
  • 2022-04-29解决LNMP安装composer install时出现Warning: putenv()问题
  • 2022-04-297B2主题美化之右上角投稿美化+加上搜索
  • 2022-04-29原生JavaScript实现弹幕组件的方法

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Photoshop CC教程:您必须知道的CC新功能
    • Centos7如何启动与切换图形界面
    • PHP替换Word中变量并导出PDF图片的实现方法
    • Photoshop制作梦幻炫彩光斑文字效果教程
    • 如何解决php md5生成16位出现乱码问题
    • Photoshop高效操作配置攻略心得全分享
    • 微信小程序wx.request使用POST请求时后端无法获取数据解决办法
    • Photoshop制作血迹喷溅效果的艺术字
    • Photoshop制作颓废的彩色立体字
    • PS快速制作一款华丽的按钮

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有