php項目開發常用的自訂函數代碼總結

來源:互聯網
上載者:User
 PHP項目開發中最常用的自訂函數,php開發中,經常需要用到的。其實很多成熟的cms系統中都有的。

  <?php  //alert提示  function alert($msg){  echo "<script>alert('$msg');</script>";  }  //把一些預定義的字元轉換為 HTML 實體  function d_htmlspecialchars($string) {  if(is_array($string)) {  foreach($string as $key => $val) {  $string[$key] = d_htmlspecialchars($val);  }  } else {  $string = str_replace('&', '&', $string);  $string = str_replace('"', '"', $string);  $string = str_replace(''', ''', $string);  $string = str_replace('<', '<', $string);  $string = str_replace('>', '>', $string);  $string = preg_replace('/&(#\d;)/', '&\1', $string);  }  return $string;  }  //在預定義字元前加上反斜線,包括 單引號、雙引號、反斜線、NULL,以保護資料庫安全  function d_addslashes($string, $force = 0) {  if(!$GLOBALS['magic_quotes_gpc'] || $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 = '';  $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';  $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 '無效的Unix時間戳記';  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='m'){  if($old_time < 1){  echo '無效的Unix時間戳記';  }else{  switch($return_type){  case 'h':  $type = 3600; break;  case 'm':  $type = 60; break;  case 's':  $type = 1; break;  case '':  $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='$url'>$url</a>";  return $return_url;  }  //跳轉函數  function url_redirect($url,$delay=''){  if($delay == ''){  echo "<script>window.location.href='$url'</script>";  }else{  echo "<meta http-equiv='refresh' content='$delay;URL=$url' />";  }  }  } //end func  ?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.