ホームページ php教程 php手册 值得收藏的10个PHP代码样例(黑名单\下载文件)

值得收藏的10个PHP代码样例(黑名单\下载文件)

May 23, 2016 am 09:54 AM
PHPコード

我们在开发中经常会要用到一些功能,下文小编整理了在开发应用中碰到的一些php经典代码了,下面一起来看看.

一、黑名单过滤,代码如下:

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
ログイン後にコピー

二、随机颜色生成器,代码如下:

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();
ログイン後にコピー

三、从网上下载文件,代码如下:

set_time_limit(0);  
// Supports all file types  
// URL Here:  
$url = &#39;http://somsite.com/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);
ログイン後にコピー

四、Alexa/Google Page Rank,代码如下:

function page_rank($page, $type = &#39;alexa&#39;){  
	switch($type){  
		case &#39;alexa&#39;:  
			$url = &#39;http://alexa.com/siteinfo/&#39;;  
			$handle = fopen($url.$page, &#39;r&#39;);  
		break;  
		case &#39;google&#39;:  
			$url = &#39;http://google.com/search?client=navclient-auto&ch=6-1484155081&features=Rank&q=info:&#39;;  
			$handle = fopen($url.&#39;http://&#39;.$page, &#39;r&#39;);  
		break;  
	}  
	$content = stream_get_contents($handle);  
	fclose($handle);  
	$content = preg_replace("~(n|t|ss+)~",&#39;&#39;, $content);  
	switch($type){  
		case &#39;alexa&#39;:  
			if(preg_match(&#39;~<div class="data (down|up)"><img  src="/static/imghw/default1.png"  data-src="&#39; . $gravatar_link . &#39;"  class="lazy" .+? alt="值得收藏的10个PHP代码样例(黑名单\下载文件) " >(.+?) </div>~im&#39;,$content,$matches)){  
				return $matches[2];  
			}else{  
				return FALSE;  
			}  
		break;  
		case &#39;google&#39;:  
			$rank = explode(&#39;:&#39;,$content);  
			if($rank[2] != &#39;&#39;)  
				return $rank[2];  
			else  
				return FALSE;  
		break;  
		default:  
			return FALSE;  
		break;  
	}  
}  
// Alexa Page Rank:  
echo &#39;Alexa Rank: &#39;.page_rank(&#39;techug.com&#39;);  
echo &#39;   
&#39;;  
// Google Page Rank  
echo &#39;Google Rank: &#39;.page_rank(&#39;techug.com&#39;, &#39;google&#39;);
ログイン後にコピー

五、强制下载文件,代码如下:

$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;  
}
ログイン後にコピー

六、用Email显示用户的Gravator头像

$gravatar_link = &#39;http://www.gravatar.com/avatar/&#39; . md5($comment_author_email) . &#39;?s=32&#39;; 
echo &#39;<img  src="/static/imghw/default1.png"  data-src="&#39; . $gravatar_link . &#39;"  class="lazy"   / alt="值得收藏的10个PHP代码样例(黑名单\下载文件) " >&#39;;
ログイン後にコピー

七、用cURL获取RSS订阅数,代码如下:

$ch = curl_init(); 
curl_setopt($ch,CURLOPT_URL,&#39;https://feedburner.google.com/api/awareness/1.0/GetFeedData?id=7qkrmib4r9rscbplq5qgadiiq4&#39;); 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,2); 
$content = curl_exec($ch); 
$subscribers = get_match(&#39;/circulation="(.*)"/isU&#39;,$content); 
curl_close($ch);
ログイン後にコピー

八、时间差异计算,代码如下:

function ago($time) 
{ 
   $periods = array("second", "minute", "hour", "day", "week", "month", "year", "decade"); 
   $lengths = array("60","60","24","7","4.35","12","10"); 
   $now = time(); 
	   $difference     = $now - $time; 
	   $tense         = "ago"; 
   for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) { 
	   $difference /= $lengths[$j]; 
   } 
   $difference = round($difference); 
   if($difference != 1) { 
	   $periods[$j].= "s"; 
   } 
   return "$difference $periods[$j] &#39;ago&#39; "; 
}
ログイン後にコピー

九、截取图片,代码如下:

$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);
ログイン後にコピー

十、检查网站是否宕机,代码如下:

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";
ログイン後にコピー


本文地址:

转载随意,但请附上文章地址:-)

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPコードテスト機能を利用してコードの保守性を向上させる方法 PHPコードテスト機能を利用してコードの保守性を向上させる方法 Aug 11, 2023 pm 12:43 PM

PHP コードのテスト機能を使用してコードの保守性を向上させる方法 ソフトウェア開発プロセスにおいて、コードの保守性は非常に重要な要素です。保守可能なコードとは、理解しやすく、変更しやすく、保守しやすいことを意味します。テストはコードの保守性を向上させる非常に効果的な手段です。この記事では、この目的を達成するために PHP コード テスト機能を使用する方法を紹介し、関連するコード例を示します。単体テスト 単体テストは、コード内のテスト可能な最小単位を検証するためにソフトウェア開発で一般的に使用されるテスト方法です。 Pで

正規表現を使用して、最新のコード仕様を満たすように PHP コードをバッチ変更するにはどうすればよいですか? 正規表現を使用して、最新のコード仕様を満たすように PHP コードをバッチ変更するにはどうすればよいですか? Sep 05, 2023 pm 03:57 PM

正規表現を使用して、最新のコード仕様を満たすように PHP コードをバッチ変更するにはどうすればよいですか?はじめに: 時間が経ち、テクノロジーが発展するにつれて、コード仕様は常に更新され、改善されます。開発プロセスでは、最新のコード仕様に準拠するために古いコードを変更する必要が生じることがよくあります。ただし、手動での変更は面倒で時間のかかる作業になる可能性があります。この場合、正規表現は強力なツールとなる可能性があります。正規表現を使用すると、コードをバッチで変更し、自動的に最新のコード仕様を満たすことができます。 1. 準備:使用する前に

PHP コードは、Baidu Wenxinyiyan API インターフェイスのリクエスト パラメータの暗号化および復号化処理を実装します。 PHP コードは、Baidu Wenxinyiyan API インターフェイスのリクエスト パラメータの暗号化および復号化処理を実装します。 Aug 16, 2023 pm 11:40 PM

PHP コードは、開発者が呼び出すことができるインターフェースの 1 つである、Baidu Wenxin Yiyan API インターフェースのリクエストパラメータの暗号化と復号化処理を実装したものです。データのセキュリティを確保するために、リクエスト パラメータを暗号化し、レスポンスを受信した後にレスポンスを復号化することができます。以下は、Baidu Wenxinyiyan API インターフェイスのリクエスト パラメータの暗号化および復号化処理を実装する PHP コードの例です。

PHP コードが最新のコード仕様に準拠しているかどうかを自動的にチェックするにはどうすればよいですか? PHP コードが最新のコード仕様に準拠しているかどうかを自動的にチェックするにはどうすればよいですか? Sep 06, 2023 pm 12:33 PM

ツールを使用して、PHP コードが最新のコーディング標準に準拠しているかどうかを自動的にチェックするにはどうすればよいですか?はじめに: ソフトウェア開発プロセスでは、コードの読みやすさ、保守性、拡張性を確保するために、特定のコード仕様に従う必要があることがよくあります。ただし、コード仕様を手動で確認するのは面倒でエラーが発生しやすい作業です。効率を向上させ、エラーを減らすために、いくつかのツールを使用してコード仕様を自動的にチェックできます。この記事では、いくつかの人気ツールを使用して、PHP コードが最新のコーディング標準に準拠しているかどうかを自動的にチェックする方法を紹介します。 1.PH

PHPコードの静的解析と脆弱性検出技術 PHPコードの静的解析と脆弱性検出技術 Aug 07, 2023 pm 05:21 PM

PHP コードの静的分析と脆弱性検出テクノロジの紹介: インターネットの発展に伴い、PHP は非常に人気のあるサーバーサイド スクリプト言語として、Web サイトの開発や動的 Web ページの生成に広く使用されています。ただし、PHP 構文は柔軟で標準化されていないため、開発プロセス中にセキュリティの脆弱性が簡単に導入されます。この問題を解決するために、PHPコードの静的解析と脆弱性検出技術が登場しました。 1. 静的分析テクノロジー 静的分析テクノロジーとは、ソース コードを分析し、静的ルールを使用して、コードが実行される前に潜在的なセキュリティ問題を特定することを指します。

ブラウザで PHP コードを記述し、コードが実行されないようにするにはどうすればよいでしょうか? ブラウザで PHP コードを記述し、コードが実行されないようにするにはどうすればよいでしょうか? Mar 10, 2024 pm 02:27 PM

ブラウザで PHP コードを記述し、コードが実行されないようにするにはどうすればよいでしょうか?インターネットの普及に伴い、Web開発に触れる人が増え、PHPの学習にも注目が集まっています。 PHP はサーバー側で実行されるスクリプト言語であり、動的な Web ページを作成するためによく使用されます。ただし、演​​習フェーズでは、ブラウザーで PHP コードを作成して結果を確認できるようにしたいと考えていますが、コードが実行されることは望ましくありません。では、ブラウザで PHP コードを記述し、それが実行されないようにするにはどうすればよいでしょうか?以下、詳細に説明する。初め、

PHPコードのテスト機能とその重要性を分析する PHPコードのテスト機能とその重要性を分析する Aug 11, 2023 pm 03:12 PM

PHP コード テスト機能とその重要性の分析 はじめに: ソフトウェア開発プロセスにおいて、コード テストは不可欠なリンクです。コードをテストすることで、潜在的なバグやエラーを効果的に発見して解決でき、コードの品質と安定性を向上させることができます。 PHP開発では機能のテストも重要です。この記事では、PHP コード テストの機能と重要性を詳しく掘り下げ、例を示して説明します。 1. PHP コードテストの機能単体テスト (UnitTesting) 単体テストは最も一般的なテスト方法です。

PHP コードのデバッグ エラーと予期しない動作 PHP コードのデバッグ エラーと予期しない動作 Aug 12, 2023 pm 04:49 PM

タイトル: PHP コードのデバッグ: 解析エラーと予期せぬ動作 はじめに: デバッグは、PHP アプリケーションを開発する際の重要なスキルです。コードがエラーや予期しない動作を報告した場合、問題を迅速に特定して修正する必要があります。この記事では、いくつかの一般的な PHP エラーと予期しない動作を調査し、対応するコード例とデバッグ方法を示します。 1. 文法上の誤り 文法上の誤りは、最も一般的な誤りの 1 つです。 PHP では、構文エラーによりスクリプト全体が正しく実行されなくなる可能性があります。サンプルコードは次のとおりです: &lt;?php

See all articles