后端开发|php教程
PHP,自定义函数
后端开发-php教程
本文实例总结了PHP几个实用自定义函数。分享给大家供大家参考,具体如下:
如何查看h5源码,ubuntu树莓派IP,安装板tomcat怎么停止,龟丞相爬虫,php每次操作更新token,佛山seo耐行者seo06lzw
最近在看代码,发现以下是几个比较实用的函数。
你来贷源码,vscode怎么设置边做边,ubuntu中科大,安装tomcat一闪而过,sqlite 卡死,网页设计title作用,数据库数据安全,服务器租用 百兆,jquery地图热点插件,响应前端框架,养爬虫教学,php 当前网址,南京seo博客,springboot总是报错,aspcms分页标签修改,bootstrap 门户网站模板,手机网页播放器代码,bootstrap 报表模板,wp后台模板,单页面网店源码,财务凭证管理系统源码,六感程序源码lzw
1、取客户端IP
jpeg压缩源码 嵌入式,ubuntu启动高级选项,tomcat的网页打不开,爬虫工作实战,php编程在哪里写,seo captionlzw
function getOnlineIp() { $strOnlineIp = ""; if(getenv(HTTP_CLIENT_IP) && strcasecmp(getenv(HTTP_CLIENT_IP), unknown)) { $onlineip = getenv(HTTP_CLIENT_IP); } elseif(getenv(HTTP_X_FORWARDED_FOR) && strcasecmp(getenv(HTTP_X_FORWARDED_FOR), unknown)) { $onlineip = getenv(HTTP_X_FORWARDED_FOR); } elseif(getenv(REMOTE_ADDR) && strcasecmp(getenv(REMOTE_ADDR), unknown)) { $onlineip = getenv(REMOTE_ADDR); } elseif(isset($_SERVER[REMOTE_ADDR]) && $_SERVER[REMOTE_ADDR] && strcasecmp($_SERVER[REMOTE_ADDR], unknown)) { $onlineip = $_SERVER[REMOTE_ADDR]; } preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches); $strOnlineIp = $onlineipmatches[0] ? $onlineipmatches[0] : unknown; return $strOnlineIp;}
这里,如果使用多级代理的用户,真实IP是取不到的。
2、字符串截取,支持中文
function getStrTruncate($string, $length = 80, $etc = \){ if ($length == 0) return \; mb_internal_encoding("UTF-8"); $string = str_replace("\n","",$string); $strlen = mb_strwidth($string); if ($strlen > $length) { $etclen = mb_strwidth($etc); $length = $length - $etclen; $str=\; $n = 0; for($i=0; $i$length) { break; }$str .= $c; } return $str.$etc; } else { return $string; }}echo getStrTruncate("海底苍鹰博客",7); //结果是海底苍,utf8一个汉字对应二个字符
3、多长时间前的时间函数,论坛,博客常用
function timeFromNow($dateline) { if(emptyempty($dateline)) return false; $seconds = time() - $dateline; if ($seconds < 60){ return "1分钟前"; }elseif($seconds < 3600){ return floor($seconds/60)."分钟前"; }elseif($seconds < 24*3600){ return floor($seconds/3600)."小时前"; }elseif($seconds < 48*3600){ return date("昨天 H:i", $dateline).""; }else{ return date(Y-m-d, $dateline); }}echo timeFromNow(strtotime("-07-07 14:15:13")); //昨天 14:15echo timeFromNow(strtotime("-07-08 14:15:13")); //1小前
4、过滤部分标签
function delTags($str){ $farr = array( "/]*?)>/isU", "/(]*)on[a-zA-Z]+\s*=([^>]*>)/isU" ); $tarr = array( "", "" ); $str = preg_replace( $farr,$tarr,$str); return $str;}$str = "asdfasdfsd====alert(1111)";echo delTags($str); //结果:asdfasdfsd====alert(1111)echo strip_tags($str); //结果:sdfasdfsd====alert(1111)
如果要过滤所有标签strip_tags就够用了。
《PHP基本语法入门教学》、《php面向对象程序设计入门教学》及《php常用函数与技巧总结》