今天就跟大家聊聊有关PHP中怎么实现一个公共方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.使用公共方法msubstr截取中文字符串,过长的使用省略号代替:使用场景:使用这类公
今天就跟大家聊聊有关PHP中怎么实现一个公共方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1.使用公共方法msubstr截取中文字符串,过长的使用省略号代替:
使用场景:
使用这类公共方法一般都是在后台进行编辑器上传一些文章的数据,需要在前端进行对应的数据展示,而有的时候,当后台数据过长,前端所展示的空间不足以显示所有的数据,这时候多余的部分使用省略号进行代替,这样可以让前端的数据展示美观且简约,给人一种赏心悦目的感觉。
代码展示:
function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true){ $str = preg_replace("/<a[^>]*>/i", "", $str); $str = preg_replace("/<\/a>/i", "", $str); $str = preg_replace("/<div[^>]*>/i", "", $str); $str = preg_replace("/<\/div>/i", "", $str); $str = preg_replace("/<!--[^>]*-->/i", "", $str);//注释内容 $str = preg_replace("/style=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/class=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/id=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/lang=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/width=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/height=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/border=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/face=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/face=.+?['|\"]/",'',$str);//去除样式只允许小写正则匹配没有带 i if(function_exists("mb_substr")){ $slice= mb_substr($str, $start, $length, $charset); }elseif(function_exists('iconv_substr')) { $slice= iconv_substr($str,$start,$length,$charset); }else{ preg_match_all($re[$charset], $str, $match); $slice = join("",array_slice($match[0], $start, $length)); } $fix=''; if(strlen($slice) < strlen($str)){ $fix='...'; } return $suffix ? $slice.$fix : $slice;}
2.enctype加密:
使用场景:
前端密码匹配设置规则或者后端密码匹配规则的再次加密,防止其他黑客进行通用的密码匹配机制进行网站关停等工作。
代码展示:
function enctype($passWord) { return md5($password . C('MD5_SUFFIX'));}
注意事项:
C('MD5_SUFFIX')项目为读取配置的常量 "MD5_SUFFIX",常量可自行设置。
3.将手机号中间4位替换为*
使用场景:
网站上用户通过手机号注册账号之后,为了保障用户的信息安全,将手机号的中间4位替换为*,即可让手机号显示不全,一定程度上保障了用户的信息安全。
代码展示:
function suohao($phone){ $p = substr($phone,0,3)."****".substr($phone,7,4); return $p;}
4.验证手机号是否正确:
使用场景:
用户注册网站时校验用户填写的手机号是否正确,方便我们后台人员后期对数据的维护。
代码展示:
function isMobile($mobile) { if (!is_numeric($mobile)) { return false; } return preg_match('#^13[\d]{9}$|^14[5,7]{1}\d{8}$|^15[^4]{1}\d{8}$|^17[0,6,7,8]{1}\d{8}$|^18[\d]{9}$#', $mobile) ? true : false;}
5.验证输入的内容是否为纯数字:
使用场景:
校验用户提交必须为数字项的参数时的校验工作,校验之后可以给用户进行对应的反馈信息,帮助用户进行数据提交的有效性。
代码展示:
function isNumeric($number) { if (!is_numeric($number)) { return false; } return preg_match('/^\d+$/i', $number) ? true : false;}
6.验证邮箱是否正确:
使用场景:
用户注册或者绑定邮箱信息的时候,需要校验邮箱的真实有效性,方便后期用户找回密码时可以快速有效的收取到对应的校验码。
代码展示:
function isEmail($email){ $mode = '/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/'; if(preg_match($mode,$email)){ return true; }else{ return false; } }
7.递归重新排序无限极分类数组:
使用场景:
商城分类通常会使用此方法,可以行之有效的进行对商城分类的数据读取和展示工作,方便个人的维护,同时方便了用户的体验。
代码展示:
//递归重新排序无限极分类数组function recursive($array,$pid=0,$level=0){//接收传递过来的数组$arr = array();foreach ($array as $value) {if($value['pid'] == $pid){//定义分类级别$value['level'] = $level;//定义分类分隔符号$value['html'] = str_repeat('-', $level);//$arr[]来存储$value$arr[] = $value;//array_merge():函数把一个或多个数组合并为一个数组。$arr = array_merge($arr,recursive($array,$value['id'],$level+1));}}return $arr;}
8.获取所有分类子分类的ID:
使用场景:
商城分类的快速读取,可以对分类信息数据进行分快速整合和数据展示,同时方便用户的快速访问体验。
代码展示:
//获取所有分类子分类的IDfunction get_all_child($array, $id){//定义一个数组$arr = array();//循环遍历foreach ($array as $v) {//判断pid是否等于idif ($v['pid'] == $id) {//$arr接收所有的id$arr[] = $v['id'];//array_merge():函数把一个或多个数组合并为一个数组。$arr = array_merge($arr, get_all_child($array, $v['id']));}}return $arr;}
看完上述内容,你们对php中怎么实现一个公共方法有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网PHP编程频道,感谢大家的支持。
--结束END--
本文标题: PHP中怎么实现一个公共方法
本文链接: https://lsjlt.com/news/299715.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0