ホームページ バックエンド開発 PHPチュートリアル curlで取得したWebページの中国語文字化けに関する問題について

curlで取得したWebページの中国語文字化けに関する問題について

Jun 13, 2016 pm 01:13 PM
code encoding str

curlでキャプチャしたWebページの中国語文字化け問題について!
現在、トランスコーディングにはこの関数を使用しています:
functionsafeEncoding($str){
$code=mb_detect_encoding($str,array('ASCII','GB2312','GBK','UTF-8 ' ));//文字列エンコーディングを検出します
if($code=="CP936"){
$result=$str;
}
else{
//$result= mb_convert_encoding( $str,'UTF-8',$code);//エンコーディング $code を utf-8 エンコーディングに変換します
$result=iconv($code,"UTF-8",$str);
}
return $result;
}
しかし、明らかに gb2312 と表示されるいくつかの文字セットに遭遇すると、依然として文字化けしてしまいます。どうすれば、curl を完全にトランスコードできるでしょうか?これは、gbk、gb2312、およびその他の一般的に使用される Web ページ形式を utf8 に変換することです。

-----解決策---------
ファイルのエンコーディングを変換する 試してみてください!
------解決策------------------
EUC-CN は、GB 2312 の最も一般的に使用される表現方法です。ブラウザのエンコード表の「GB2312」は通常「EUC-CN」表記を指します。
これは鍵ではありません!
必要なのは、gbk、gb2312、その他の一般的な Web ページ形式を utf8 に変換することです
しかし、コードではこれができません

if(! mb_check_encoding($str, 'utf-8 ') ) {
$str = mb_convert_encoding($str,'UTF-8','gbk');
}

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Visual Studio Code で Unity プロジェクトを編集すれば、準備完了です。 Visual Studio Code で Unity プロジェクトを編集すれば、準備完了です。 Aug 08, 2023 am 10:21 AM

Microsoft は、Visual Studio Code 用の Unity 拡張機能のプレビュー バージョンをリリースしました。この新しい Unity 拡張機能を使用すると、Unity ゲームを作成およびデバッグできるようになります。この新しい Unity 拡張機能は、Visual Studio および Visual Studio Tools for Unity ですでに利用可能ないくつかの人気機能をもたらし、Visual Studio Code の C# を Unity 開発により適したものにします。現在、VSCode の Unity 拡張機能は次のものを提供しています。 Unity エディターと Unity プレーヤーをデバッグするための Unity デバッガー。 Unity 固有の C# アナライザーとリファクタリング。ユニ

Java で UnsupportedEncodingException に対処するにはどうすればよいですか? Java で UnsupportedEncodingException に対処するにはどうすればよいですか? Jun 25, 2023 am 08:02 AM

Java で UnsupportedEncodingException に対処するにはどうすればよいですか? Java プログラミングでは、UnsupportedEncodingException が発生する場合があります。この例外は通常、間違ったエンコード変換またはサポートされていないエンコードによって発生します。この記事では、UnsupportedEncodingException例外の原因と対処法を紹介します。サポート対象外とは何ですか?

Python組み込み型strソースコード解析 Python組み込み型strソースコード解析 May 09, 2023 pm 02:16 PM

1 Unicode コンピュータ ストレージの基本単位は 8 ビットで構成されるバイトです。英語は 26 文字といくつかの記号のみで構成されているため、英語の文字はバイト単位で直接格納できます。ただし、他の言語 (中国語、日本語、韓国語など) では、文字数が多いため、エンコードに複数のバイトを使用する必要があります。コンピューター技術の普及に伴い、非ラテン文字エンコード技術は発展を続けていますが、依然として 2 つの大きな制限があります。 多言語サポートがないこと。 ある言語のエンコード スキームを別の言語で使用することはできません。また、統一された標準もありません。たとえば、中国語には GBK、GB2312、GB18030 など、多くのエンコード標準があります。エンコード方式が統一されていないため、開発者は異なるエンコード間で相互に変換する必要があり、必然的に多くのエラーが発生します。

Python の __str__ と __repr__ の類似点と相違点は何ですか? Python の __str__ と __repr__ の類似点と相違点は何ですか? Apr 29, 2023 pm 07:58 PM

__str__ と __repr__ の類似点と相違点は何ですか? 文字列の表現については誰もが知っています。Python の組み込み関数 repr() は、識別を容易にするためにオブジェクトを文字列の形式で表現できます。これが「文字列表現」です。 repr() は、特別なメソッド __repr__ を通じてオブジェクトの文字列表現を取得します。 __repr__ が実装されていない場合、ベクトルのインスタンスをコンソールに出力すると、結果の文字列が次のようになります。 >>>classExample:pass>>>print(str(Example()))>>>

Redis の種類とエンコーディングの原則と使用法は何ですか? Redis の種類とエンコーディングの原則と使用法は何ですか? May 29, 2023 pm 04:21 PM

概要 Redis は、さまざまなシナリオで広く使用されているオープンソースの高性能キー/値データベースです。 Redisでは、データ型(type)とエンコーディング(encoding)は非常に重要な概念です。このブログでは、Redis でサポートされるデータ型、対応するエンコード方法、および基礎となる実装原則について詳しく紹介します。 Redis キーの内部エンコーディングを表示するには、Redis コマンド OBJECTENCODINGkey を使用できます。このうち key はクエリしたいキー名です。たとえば、mykey という名前のキーの内部エンコードをクエリする場合は、次のコマンドを実行できます: 127.0.0.1:6379>objectencodin

HTMLとコード:用語を詳しく見る HTMLとコード:用語を詳しく見る Apr 10, 2025 am 09:28 AM

htmlisaspecifictypeofcodefocuseduructuringwebcontent

Java の UnsupportedEncodingException 例外の解決策 Java の UnsupportedEncodingException 例外の解決策 Jun 25, 2023 am 08:48 AM

UnsupportedEncodingException は、主にエンコーディングがサポートされていないために Java で発生することがあります。テキスト データを処理する場合、多くの場合、エンコード変換を実行する必要があります。つまり、あるエンコード形式のコンテンツを別のエンコード形式のコンテンツに変換することです。エンコード変換に使用されたエンコードタイプがサポートされていない場合、UnsupportedEncodingException がスローされます。この記事では、この例外の解決策を紹介します。 1つ、

Encoding/csv パッケージが提供する関数を使用して、CSV ファイルの読み取りと書き込みを行います。 Encoding/csv パッケージが提供する関数を使用して、CSV ファイルの読み取りと書き込みを行います。 Jul 24, 2023 pm 01:13 PM

CSV ファイルの読み取りと書き込みには、encoding/csv パッケージが提供する関数を使用します。CSV (Comma-SeparatedValues) は、データをカンマ区切り形式のテキスト ファイルとして簡単に保存できる、一般的に使用されるデータ保存形式です。 Python では、標準ライブラリの encoding/csv パッケージを使用して、CSV ファイルを簡単に読み書きできます。まず、エンコーディング/csv パッケージをインポートする必要があります: importcsv 次

See all articles