>  기사  >  백엔드 개발  >  PHP에서 일반적으로 사용되는 일부 기능 요약(요약)

PHP에서 일반적으로 사용되는 일부 기능 요약(요약)

不言
不言원래의
2018-08-06 15:35:042685검색

이 글은 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;
}
2. . 무작위 색상 생성기

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
3. 인터넷에서 파일 다운로드

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();
4. 파일 강제 다운로드

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);
6.

$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;
}

추천 관련 기사:

PHP 참조 변수란 무엇인가요? PHP에서는 인용이 어떻게 구현되나요?

php7과 php5의 차이점은 무엇인가요? php5와 php7의 비교

위 내용은 PHP에서 일반적으로 사용되는 일부 기능 요약(요약)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.