• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP自定义函数的用法

php 搞代码 3年前 (2022-01-24) 34次浏览 已收录 0个评论

本篇文章主要介绍PHP自定义函数的用法,感兴趣的朋友参考下,希望对大家有所帮助。

1、取客户端本文来源[email protected]搞@^&代*@码)网9搞代gaodaima码IP

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; $i++) {      $c = mb_substr($string, $i, 1);      $n += mb_strwidth($c);      if ($n>$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("2012-07-07 14:15:13")); //昨天 14:15echo timeFromNow(strtotime("2012-07-08 14:15:13")); //1小前

4、过滤部分标签

function delTags($str){  $farr = array(  "/<(\/?)(script|i?frame|style|html|body|title|link|meta|form|input|embed|object|textarea|\?|\%)([^>]*?)>/isU",  "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU"  );  $tarr = array(  "",  ""  );  $str = preg_replace( $farr,$tarr,$str);  return $str;}$str = "<a href='#'>asdfasdfsd</a>====<script>alert(1111)</script>";echo delTags($str);  //结果:<a href='#'>asdfasdfsd</a>====alert(1111)echo strip_tags($str); //结果:sdfasdfsd====alert(1111)

如果要过滤所有标签strip_tags就够用了。

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php实现获取一定范围内取N个不重复的随机数的方法

PHP中上传文件的处理问题实例详解

php实现一段简单概率的方法

以上就是PHP自定义函数的用法的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP自定义函数的用法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址