PHP を使用して Web ページが gzip 圧縮されているかどうかを判断する_PHP チュートリアル
昨夜、グループの友人が Web ページを収集したところ、file_get_contents で取得した Web ページをローカルに保存すると、応答ヘッダーに Content-Encoding: gzip
が含まれていましたが、ブラウザで表示すると正常でした。
関連した経験があるため、Web サイトが gzip をオンにし、file_get_contents が解凍されたページではなく圧縮されたページを取得したことがすぐにわかりました (Web ページをリクエストして取得するときに、file_get_contents が対応するパラメーターを持ってくる必要があるかどうかはわかりません) gzip で圧縮されていない Web ページ?)
ファイルの最初の 2 バイトを読み取ることでファイルの種類を判断できることをつい最近知りました。グループの友人らは、gzip 圧縮された Web ページ (gbk エンコード) の最初の 2 バイトは 1F 8B であるため、Web ページが gzip 圧縮されているかどうかを判断できるとも言いました。
コードは次のとおりです:
//Mire Military Network uses gzip to compress the Web page
//file_get_contents 直接取得した Web ページは文字化けします。
header('Content-Type:text/html;charset=utf-8' );
$url = 'http://www.miercn.com'
$file = fopen($url, "rb");
//読み取りのみ 2 バイト (16 進数) 1f 8b (10 進数) 31 139 の場合、gzip が有効になります
$bin = fread($file, 2)
$ strInfo = @unpack ("C2chars", $bin);
$typeCode = intval($strInfo['chars1'].$strInfo['chars2']);
switch ($typeCode)
ケース 31139:
//Web サイトでは gzip が有効になっています
$isGzip = 1;
デフォルト:
$isGzip = 0;
}
$url = $url; //三項式
$mierHtml = file_get_contents($url); //Mier軍事ネットワークデータを取得
$mierHtml = iconv("gbk","utf-8",$mierHtml);
http://www.bkjia.com/PHPjc/327839.html
www.bkjia.com
本当
http://www.bkjia.com/PHPjc/327839.html

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています
