Maison  >  Article  >  développement back-end  >  Résumé des codes de fonction personnalisés couramment utilisés dans le développement de projets PHP

Résumé des codes de fonction personnalisés couramment utilisés dans le développement de projets PHP

伊谢尔伦
伊谢尔伦original
2017-06-26 09:56:561152parcourir

 PHP项目开发中最常用的自定义函数,php开发中,经常需要用到的。其实很多成熟的cms系统中都有的。

  <?php
  //alert提示
  function alert($msg){
  echo "<script>alert(&#39;$msg&#39;);</script>";
  }
  //把一些预定义的字符转换为 HTML 实体
  function d_htmlspecialchars($string) {
  if(is_array($string)) {
  foreach($string as $key => $val) {
  $string[$key] = d_htmlspecialchars($val);
  }
  } else {
  $string = str_replace(&#39;&&#39;, &#39;&&#39;, $string);
  $string = str_replace(&#39;"&#39;, &#39;"&#39;, $string);
  $string = str_replace(&#39;&#39;&#39;, &#39;&#39;&#39;, $string);
  $string = str_replace(&#39;<&#39;, &#39;<&#39;, $string);
  $string = str_replace(&#39;>&#39;, &#39;>&#39;, $string);
  $string = preg_replace(&#39;/&(#\d;)/&#39;, &#39;&\1&#39;, $string);
  }
  return $string;
  }
  //在预定义字符前加上反斜杠,包括 单引号、双引号、反斜杠、NULL,以保护数据库安全
  function d_addslashes($string, $force = 0) {
  if(!$GLOBALS[&#39;magic_quotes_gpc&#39;] || $force) {
  if(is_array($string)) {
  foreach($string as $key => $val) $string[$key] = d_addslashes($val, $force);
  }
  else $string = addslashes($string);
  }
  return $string;
  }
  //生成随机字符串,包含大写、小写字母、数字
  function randstr($length) {
  $hash = &#39;&#39;;
  $chars = &#39;ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz&#39;;
  $max = strlen($chars) - 1;
  mt_srand((double)microtime() * 1000000);
  for($i = 0; $i < $length; $i++) {
  $hash .= $chars[mt_rand(0, $max)];
  }
  return $hash;
  }
  //转换时间戳为常用的日期格式
  function trans_time($timestamp){
  if($timestamp < 1) echo &#39;无效的Unix时间戳&#39;;
  else return date("Y-m-d H:i:s",$timestamp);
  }
  //获取IP
  function get_ip() {
  if ($_SERVER["HTTP_X_FORWARDED_FOR"])
  $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
  else if ($_SERVER["HTTP_CLIENT_IP"])
  $ip = $_SERVER["HTTP_CLIENT_IP"];
  else if ($_SERVER["REMOTE_ADDR"])
  $ip = $_SERVER["REMOTE_ADDR"];
  else if (getenv("HTTP_X_FORWARDED_FOR"))
  $ip = getenv("HTTP_X_FORWARDED_FOR");
  else if (getenv("HTTP_CLIENT_IP"))
  $ip = getenv("HTTP_CLIENT_IP");
  else if (getenv("REMOTE_ADDR"))
  $ip = getenv("REMOTE_ADDR");
  else
  $ip = "Unknown";
  return $ip;
  }
  //计算时间差:默认返回类型为“分钟”
  //$old_time 只能是时间戳,$return_type 为 h 是小时,为 s 是秒
  function timelag($old_time,$return_type=&#39;m&#39;){
  if($old_time < 1){
  echo &#39;无效的Unix时间戳&#39;;
  }else{
  switch($return_type){
  case &#39;h&#39;:
  $type = 3600; break;
  case &#39;m&#39;:
  $type = 60; break;
  case &#39;s&#39;:
  $type = 1; break;
  case &#39;&#39;:
  $type = 60; break;
  }
  $dif = round( (time()-$old_time)/$type ) ;
  return $dif;
  }
  }
  //获取当前页面的URL地址
  function url_this(){
  $url = "http://".$_SERVER ["HTTP_HOST"].$_SERVER["REQUEST_URI"];
  $return_url = "<a href=&#39;$url&#39;>$url</a>";
  return $return_url;
  }
  //跳转函数
  function url_redirect($url,$delay=&#39;&#39;){
  if($delay == &#39;&#39;){
  echo "<script>window.location.href=&#39;$url&#39;</script>";
  }else{
  echo "<meta http-equiv=&#39;refresh&#39; content=&#39;$delay;URL=$url&#39; />";
  }
  }
  } //end func
  ?>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn