PHP中常用的一些功能總結(歸納)

來源:互聯網
上載者:User
這篇文章給大家介紹的內容是關於PHP中常用的一些功能總結(歸納),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所協助。

1.擷取網站是http還是https ?

$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';

2.刪除數組中的空資料

function where_data($data){    foreach ($data as $k => $v) {        if (empty($v) && $v !='0') {            unset($data[$k]);        }    }    return $data;}

3.截取富文本中的其中一部分

/** * 將富文本中文字截取其中的一部分 * @param $content * @return string */function html_substr_content($content,$length=100){    $content = htmlspecialchars_decode($content);      //把一些預定義的 HTML 實體轉換為字元    $content = str_replace(" ", "", $content);     //將空格替換成空    $content = strip_tags($content);                 //函數剝去字串中的 HTML、XML 以及 PHP 的標籤,擷取純文字內容    $con = mb_substr($content, 0, $length, "utf-8");   //返回字串中的前100字串長度的字元    return $con;}

一、黑名單過濾

function is_spam($text, $file, $split = ':', $regex = false){  $handle = fopen($file, 'rb');  $contents = fread($handle, filesize($file));  fclose($handle);  $lines = explode("n", $contents);$arr = array();foreach($lines as $line){list($word, $count) = explode($split, $line);if($regex)$arr[$word] = $count;else$arr[preg_quote($word)] = $count;}preg_match_all("~".implode('|', array_keys($arr))."~", $text, $matches);$temp = array();foreach($matches[0] as $match){if(!in_array($match, $temp)){$temp[$match] = $temp[$match] + 1;if($temp[$match] >= $arr[$word])return true;}}return false;}$file = 'spam.txt';$str = 'This string has cat, dog word';if(is_spam($str, $file))echo 'this is spam';elseecho 'this is not spam';ab:3dog:3cat:2monkey:2

二、隨機顏色產生器

function randomColor() {  $str = '#';  for($i = 0 ; $i < 6 ; $i++) {    $randNum = rand(0 , 15);    switch ($randNum) {      case 10: $randNum = 'A'; break;      case 11: $randNum = 'B'; break;      case 12: $randNum = 'C'; break;      case 13: $randNum = 'D'; break;      case 14: $randNum = 'E'; break;      case 15: $randNum = 'F'; break;    }    $str .= $randNum;  }  return $str;}$color = randomColor();

三、從網上下載檔案

set_time_limit(0);// Supports all file types// URL Here:$url = 'http://php.cn/some_video.flv';$pi = pathinfo($url);$ext = $pi['extension'];$name = $pi['filename'];// create a new cURL resource$ch = curl_init();// set URL and other appropriate optionscurl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_HEADER, false);curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);curl_setopt($ch, CURLOPT_AUTOREFERER, true);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                        // grab URL and pass it to the browser$opt = curl_exec($ch);// close cURL resource, and free up system resourcescurl_close($ch);$saveFile = $name.'.'.$ext;if(preg_match("/[^0-9a-z._-]/i", $saveFile))$saveFile = md5(microtime(true)).'.'.$ext;$handle = fopen($saveFile, 'wb');fwrite($handle, $opt);fclose($handle);

四、強制下載檔案

$filename = $_GET['file']; //Get the fileid from the URL// Query the file ID$query = sprintf("SELECT * FROM tableName WHERE id = '%s'",mysql_real_escape_string($filename));$sql = mysql_query($query);if(mysql_num_rows($sql) > 0){$row = mysql_fetch_array($sql);// Set some headersheader("Pragma: public");header("Expires: 0");header("Cache-Control: must-revalidate, post-check=0, pre-check=0");header("Content-Type: application/force-download");header("Content-Type: application/octet-stream");header("Content-Type: application/download");header("Content-Disposition: attachment; filename=".basename($row['FileName']).";");header("Content-Transfer-Encoding: binary");header("Content-Length: ".filesize($row['FileName']));@readfile($row['FileName']);exit(0);}else{header("Location: /");exit;}

五、截取圖片

$filename= "test.jpg";list($w, $h, $type, $attr) = getimagesize($filename);$src_im = imagecreatefromjpeg($filename);$src_x = '0'; // begin x$src_y = '0'; // begin y$src_w = '100'; // width$src_h = '100'; // height$dst_x = '0'; // destination x$dst_y = '0'; // destination y$dst_im = imagecreatetruecolor($src_w, $src_h);$white = imagecolorallocate($dst_im, 255, 255, 255);imagefill($dst_im, 0, 0, $white);imagecopy($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h);header("Content-type: image/png");imagepng($dst_im);imagedestroy($dst_im);

六、檢查網站是否宕機

function Visit($url){    $agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";$ch=curl_init();curl_setopt ($ch, CURLOPT_URL,$url );curl_setopt($ch, CURLOPT_USERAGENT, $agent);curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt ($ch,CURLOPT_VERBOSE,false);curl_setopt($ch, CURLOPT_TIMEOUT, 5);curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch,CURLOPT_SSLVERSION,3);curl_setopt($ch,CURLOPT_SSL_VERIFYHOST, FALSE);$page=curl_exec($ch);//echo curl_error($ch);$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);curl_close($ch);if($httpcode>=200 && $httpcode<300) return true;else return false;}if (Visit("http://www.google.com"))echo "Website OK"."n";elseecho "Website DOWN";

相關文章推薦:

什麼是php引用變數?PHP中引用是如何?

php7和php5有什麼不同之處?php5與php7之間的對比

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.