Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung benutzerdefinierter Funktionscodes, die häufig in der PHP-Projektentwicklung verwendet werden

Zusammenfassung benutzerdefinierter Funktionscodes, die häufig in der PHP-Projektentwicklung verwendet werden

伊谢尔伦
伊谢尔伦Original
2017-06-26 09:56:561200Durchsuche

 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
  ?>

Das obige ist der detaillierte Inhalt vonZusammenfassung benutzerdefinierter Funktionscodes, die häufig in der PHP-Projektentwicklung verwendet werden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn