Home  >  Article  >  Backend Development  >  Summary of some commonly used functions in PHP (summary)

Summary of some commonly used functions in PHP (summary)

不言
不言Original
2018-08-06 15:35:042801browse

This article introduces to you a summary (summary) of some commonly used functions in PHP. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

1. Get whether the website is http or https?

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

2. Delete the empty data in the array

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

3. Intercept part of the rich text

/**
 * 将富文本中文字截取其中的一部分
 * @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;
}

1. Blacklist filtering

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';
			else
			echo 'this is not spam';
			ab:3
			dog:3
			cat:2
			monkey:2

2. Random color generator

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

3. Download files from the Internet

set_time_limit(0);
			// Supports all file types
			// URL Here:
			$url = &#39;http://php.cn/some_video.flv&#39;;
			$pi = pathinfo($url);
			$ext = $pi[&#39;extension&#39;];
			$name = $pi[&#39;filename&#39;];
			// create a new cURL resource
			$ch = curl_init();
			// set URL and other appropriate options
			curl_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 resources
			curl_close($ch);
			$saveFile = $name.&#39;.&#39;.$ext;
			if(preg_match("/[^0-9a-z._-]/i", $saveFile))
			$saveFile = md5(microtime(true)).&#39;.&#39;.$ext;
			$handle = fopen($saveFile, &#39;wb&#39;);
			fwrite($handle, $opt);
			fclose($handle);

4. Forced file download

$filename = $_GET[&#39;file&#39;]; //Get the fileid from the URL
// Query the file ID
$query = sprintf("SELECT * FROM tableName WHERE id = &#39;%s&#39;",mysql_real_escape_string($filename));
$sql = mysql_query($query);
if(mysql_num_rows($sql) > 0){
$row = mysql_fetch_array($sql);
// Set some headers
header("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[&#39;FileName&#39;]).";");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($row[&#39;FileName&#39;]));
@readfile($row[&#39;FileName&#39;]);
exit(0);
}else{
header("Location: /");
exit;
}

5. Screen capture

$filename= "test.jpg";
list($w, $h, $type, $attr) = getimagesize($filename);
$src_im = imagecreatefromjpeg($filename);
$src_x = &#39;0&#39;; // begin x
$src_y = &#39;0&#39;; // begin y
$src_w = &#39;100&#39;; // width
$src_h = &#39;100&#39;; // height
$dst_x = &#39;0&#39;; // destination x
$dst_y = &#39;0&#39;; // 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);

6. Check Is the website down?

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";
else
echo "Website DOWN";

Recommended related articles:

What are php reference variables? How is quoting implemented in PHP?

What are the differences between php7 and php5? Comparison between php5 and php7

The above is the detailed content of Summary of some commonly used functions in PHP (summary). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn