一段将GB编码转换为utf8的代码_PHP
gb2utf8.php 文件如下: <font color="#000000"><br><font face="新宋体" color="#007700">Class </font><font face="新宋体" color="#0000bb">GB2UTF8 <br></font><font face="新宋体"><font color="#007700">{ <br>var </font><font color="#0000bb">$gb</font><font color="#007700">; </font></font><font face="新宋体"><font color="#ff8000">// 待转换的GB2312字符串 <br></font><font color="#007700">var </font><font color="#0000bb">$utf8</font><font color="#007700">; </font></font><font face="新宋体"><font color="#ff8000">// 转换后的UTF8字符串 <br> </font><font color="#007700">var </font><font color="#0000bb">$CodeTable</font><font color="#007700">; </font></font><font face="新宋体"><font color="#ff8000">// 转换过程中使用的GB2312代码文件数组 <br> </font><font color="#007700">var </font><font color="#0000bb">$ErrorMsg</font><font color="#007700">; </font></font><font face="新宋体"><font color="#ff8000">// 转换过程之中的错误讯息 <br><br></font><font color="#007700">function </font><font color="#0000bb">GB2UTF8</font><font color="#007700">(</font><font color="#0000bb">$InStr</font><font color="#007700">=</font><font color="#dd0000">""</font></font><font face="新宋体"><font color="#007700">) <br>{ <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">gb</font><font color="#007700">=</font><font color="#0000bb">$InStr</font></font><font face="新宋体"><font color="#007700">; <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">SetGb2312</font></font><font face="新宋体"><font color="#007700">(); <br>(</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">gb</font><font color="#007700">==</font><font color="#dd0000">""</font><font color="#007700">)?</font><font color="#0000bb">0</font><font color="#007700">:</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">Convert</font></font><font face="新宋体"><font color="#007700">(); <br>} <br><br>function </font><font color="#0000bb">SetGb2312</font><font color="#007700">(</font><font color="#0000bb">$InStr</font><font color="#007700">=</font><font color="#dd0000">"gb2312.txt"</font></font><font face="新宋体" color="#007700">) <br>{ </font><font face="新宋体"><font color="#ff8000">// 设置gb2312代码文件,默认为gb2312.txt <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">ErrorMsg</font><font color="#007700">=</font><font color="#dd0000">""</font></font><font face="新宋体"><font color="#007700">; <br></font><font color="#0000bb">$tmp</font><font color="#007700">=@</font><font color="#0000bb">file</font><font color="#007700">(</font><font color="#0000bb">$InStr</font></font><font face="新宋体"><font color="#007700">); <br> if (!</font><font color="#0000bb">$tmp</font></font><font face="新宋体"><font color="#007700">) { <br> </font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">ErrorMsg</font><font color="#007700">=</font><font color="#dd0000">"No GB2312"</font></font><font face="新宋体"><font color="#007700">; <br> return </font><font color="#0000bb">false</font></font><font face="新宋体"><font color="#007700">; <br> } <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">CodeTable</font></font><font face="新宋体"><font color="#007700">=array(); <br>while(list(</font><font color="#0000bb">$key</font><font color="#007700">,</font><font color="#0000bb">$value</font><font color="#007700">)=</font><font color="#0000bb">each</font><font color="#007700">(</font><font color="#0000bb">$tmp</font></font><font face="新宋体"><font color="#007700">)) { <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">CodeTable</font><font color="#007700">[</font><font color="#0000bb">hexdec</font><font color="#007700">(</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$value</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">6</font><font color="#007700">))]=</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$value</font><font color="#007700">,</font><font color="#0000bb">7</font><font color="#007700">,</font><font color="#0000bb">6</font></font><font face="新宋体"><font color="#007700">); <br>} <br>} <br> <br>function </font><font color="#0000bb">Convert</font></font><font face="新宋体" color="#007700">() <br>{ </font><font face="新宋体"><font color="#ff8000">// 转换GB2312字符串到UTF8字符串,需预先设置$gb <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">utf8</font><font color="#007700">=</font><font color="#dd0000">""</font></font><font face="新宋体"><font color="#007700">; <br>if(!</font><font color="#0000bb">trim</font><font color="#007700">(</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">gb</font><font color="#007700">) || </font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">ErrorMsg</font><font color="#007700">!=</font><font color="#dd0000">""</font></font><font face="新宋体"><font color="#007700">) { <br>return (</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">utf8</font><font color="#007700">=</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">ErrorMsg</font></font><font face="新宋体"><font color="#007700">); <br>} <br> </font><font color="#0000bb">$str</font><font color="#007700">=</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">gb</font></font><font face="新宋体"><font color="#007700">; <br><br>while(</font><font color="#0000bb">$str</font></font><font face="新宋体"><font color="#007700">) { <br>if (</font><font color="#0000bb">ord</font><font color="#007700">(</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$str</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">1</font><font color="#007700">))></font><font color="#0000bb">127</font></font><font face="新宋体"><font color="#007700">) <br>{ <br></font><font color="#0000bb">$tmp</font><font color="#007700">=</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$str</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">2</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">=</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$str</font><font color="#007700">,</font><font color="#0000bb">2</font><font color="#007700">,</font><font color="#0000bb">strlen</font><font color="#007700">(</font><font color="#0000bb">$str</font></font><font face="新宋体"><font color="#007700">)); <br></font><font color="#0000bb">$tmp</font><font color="#007700">=</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">U2UTF8</font><font color="#007700">(</font><font color="#0000bb">hexdec</font><font color="#007700">(</font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">CodeTable</font><font color="#007700">[</font><font color="#0000bb">hexdec</font><font color="#007700">(</font><font color="#0000bb">bin2hex</font><font color="#007700">(</font><font color="#0000bb">$tmp</font><font color="#007700">))-</font><font color="#0000bb">0x8080</font></font><font face="新宋体"><font color="#007700">])); <br>for(</font><font color="#0000bb">$i</font><font color="#007700">=</font><font color="#0000bb">0</font><font color="#007700">;</font><font color="#0000bb">$i</font><font color="#007700"><font color="#0000bb">strlen </font><font color="#007700">(</font><font color="#0000bb">$tmp</font><font color="#007700">);</font><font color="#0000bb">$i</font><font color="#007700">+=</font><font color="#0000bb">3</font></font><font face="新宋体"><font color="#007700">) <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">utf8</font><font color="#007700">.=</font><font color="#0000bb">chr</font><font color="#007700">(</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$tmp</font><font color="#007700">,</font><font color="#0000bb">$i</font><font color="#007700">,</font><font color="#0000bb">3</font></font><font face="新宋体"><font color="#007700">)); <br>} <br>else <br>{ <br></font><font color="#0000bb">$tmp</font><font color="#007700">=</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$str</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">1</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">=</font><font color="#0000bb">substr</font><font color="#007700">(</font><font color="#0000bb">$str</font><font color="#007700">,</font><font color="#0000bb">1</font><font color="#007700">,</font><font color="#0000bb">strlen</font><font color="#007700">(</font><font color="#0000bb">$str</font></font><font face="新宋体"><font color="#007700">)); <br></font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">utf8</font><font color="#007700">.=</font><font color="#0000bb">$tmp</font></font><font face="新宋体"><font color="#007700">; <br>} <br>} <br>return </font><font color="#0000bb">$this</font><font color="#007700">-></font><font color="#0000bb">utf8</font></font><font face="新宋体"><font color="#007700">; <br>} <br><br><br>function </font><font color="#0000bb">U2UTF8</font><font color="#007700">(</font><font color="#0000bb">$InStr</font></font><font face="新宋体"><font color="#007700">) <br>{ <br>for(</font><font color="#0000bb">$i</font><font color="#007700">=</font><font color="#0000bb">0</font><font color="#007700">;</font><font color="#0000bb">$i</font><font color="#007700"><font color="#0000bb">count</font><font color="#007700">(</font><font color="#0000bb">$InStr</font><font color="#007700">);</font><font color="#0000bb">$i</font></font><font face="新宋体"><font color="#007700">++) <br></font><font color="#0000bb">$str</font><font color="#007700">=</font><font color="#dd0000">""</font></font><font face="新宋体"><font color="#007700">; <br>if (</font><font color="#0000bb">$InStr </font><font color="#007700"><font color="#0000bb">0x80</font></font><font face="新宋体"><font color="#007700">) { <br></font><font color="#0000bb">$str</font><font color="#007700">.=</font><font color="#0000bb">ord</font><font color="#007700">(</font><font color="#0000bb">$InStr</font></font><font face="新宋体"><font color="#007700">); <br>} <br>else if (</font><font color="#0000bb">$InStr </font><font color="#007700"><font color="#0000bb">0x800</font></font><font face="新宋体"><font color="#007700">) { <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0xC0 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">6</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br>} <br>else if (</font><font color="#0000bb">$InStr </font><font color="#007700"><font color="#0000bb">0x10000</font></font><font face="新宋体"><font color="#007700">) { <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0xE0 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">12</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">6 </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br>} <br>else if (</font><font color="#0000bb">$InStr </font><font color="#007700"><font color="#0000bb">0x200000</font></font><font face="新宋体"><font color="#007700">) { <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0xF0 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">18</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">12 </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr</font><font color="#007700">>></font><font color="#0000bb">6 </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$str</font><font color="#007700">.=(</font><font color="#0000bb">0x80 </font><font color="#007700">| </font><font color="#0000bb">$InStr </font><font color="#007700">& </font><font color="#0000bb">0x3F</font></font><font face="新宋体"><font color="#007700">); <br>} <br>return </font><font color="#0000bb">$str</font></font><font face="新宋体"><font color="#007700">; <br>} <br>}</font><br></font></font><br></font></font></font></font></font></font>
测试文件如下:
<font color="#000000"><br><font face="新宋体"><font color="#0000bb">php <br>Header</font><font color="#007700">(</font><font color="#dd0000">"Content-type: image/png"</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$im </font><font color="#007700">= </font><font color="#0000bb">imagecreate</font><font color="#007700">(</font><font color="#0000bb">400</font><font color="#007700">,</font><font color="#0000bb">300</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$black </font><font color="#007700">= </font><font color="#0000bb">ImageColorAllocate</font><font color="#007700">(</font><font color="#0000bb">$im</font><font color="#007700">, </font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">,</font><font color="#0000bb">0</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$white </font><font color="#007700">= </font><font color="#0000bb">ImageColorAllocate</font><font color="#007700">(</font><font color="#0000bb">$im</font><font color="#007700">, </font><font color="#0000bb">184</font><font color="#007700">,</font><font color="#0000bb">44</font><font color="#007700">,</font><font color="#0000bb">6</font></font><font face="新宋体"><font color="#007700">); <br>include(</font><font color="#dd0000">"gb2utf8.php"</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">$obj</font><font color="#007700">=new </font><font color="#0000bb">gb2utf8</font></font><font face="新宋体"><font color="#007700">(); <br></font><font color="#0000bb">$obj</font><font color="#007700">-></font><font color="#0000bb">gb</font><font color="#007700">=</font><font color="#dd0000">"123abc中国456def测试正确"</font></font><font face="新宋体"><font color="#007700">; <br></font><font color="#0000bb">$obj</font><font color="#007700">-></font><font color="#0000bb">Convert</font></font><font face="新宋体"><font color="#007700">(); <br></font><font color="#0000bb">ImageTTFText</font><font color="#007700">(</font><font color="#0000bb">$im</font><font color="#007700">, </font><font color="#0000bb">20</font><font color="#007700">, </font><font color="#0000bb">0</font><font color="#007700">, </font><font color="#0000bb">5</font><font color="#007700">, </font><font color="#0000bb">50</font><font color="#007700">, </font><font color="#0000bb">$white</font><font color="#007700">, </font><font color="#dd0000">"SIMKAI.TTF"</font><font color="#007700">, </font><font color="#0000bb">$obj</font><font color="#007700">-></font><font color="#0000bb">utf8</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">ImagePNG</font><font color="#007700">(</font><font color="#0000bb">$im</font></font><font face="新宋体"><font color="#007700">); <br></font><font color="#0000bb">ImageDestroy</font><font color="#007700">(</font><font color="#0000bb">$im</font><font color="#007700">);</font><br></font></font><br>
说明:
需要正确设置font文件,请先确认可以使用font直接(不使用gb2utf8)输出英文。

ホット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)

ホットトピック









全角の英字を半角に変換する実践的なヒント. 現代の生活において私たちは英語の文字に触れる機会が多く、パソコンや携帯電話などを使用する際に英語の文字を入力する必要が多くなります。ただし、場合によっては全角の英字が登場するため、半角形式を使用する必要があります。では、全角の英字を半角に変換するにはどうすればよいでしょうか?ここでは、いくつかの実践的なヒントを紹介します。まず、全角英数字とはインプットメソッド内で全角の位置を占める文字のことを指しますが、半角英数字は全角の位置を占めます。

デバイスをリモートでプログラムする必要がある場合は、この記事が役に立ちます。あらゆるデバイスをプログラミングするためのトップ GE ユニバーサル リモート コードを共有します。 GE リモコンとは何ですか? GEUniversalRemote は、スマート TV、LG、Vizio、Sony、Blu-ray、DVD、DVR、Roku、AppleTV、ストリーミング メディア プレーヤーなどの複数のデバイスを制御するために使用できるリモコンです。 GEUniversal リモコンには、さまざまな機能を備えたさまざまなモデルがあります。 GEUniversalRemote は最大 4 台のデバイスを制御できます。あらゆるデバイスでプログラムできるトップのユニバーサル リモート コード GE リモコンには、さまざまなデバイスで動作できるようにするコードのセットが付属しています。してもいいです

この記事では、PHPの月を英語の月に変換する方法と具体的なコード例を詳しく紹介します。 PHP 開発では、デジタル月を英語の月に変換する必要がある場合があります。これは、一部の日付処理またはデータ表示シナリオでは非常に実用的です。以下に実装原理、具体的なコード例、注意点について詳しく説明します。 1. 実装原理 PHP では、DateTime クラスと format メソッドを使用して、デジタル月を英語の月に変換できます。日付

QQ Music を使用すると、誰でも映画を楽しんだり、退屈を解消したりすることができます。このソフトウェアを毎日使用して、あなたのニーズを簡単に満たすことができます。誰もが聴くことができる高品質の曲が多数用意されています。ダウンロードして保存することもできます。次回聴くときはインターネット接続は必要ありません。ここでダウンロードした曲は MP3 形式ではないため、他のプラットフォームでは使用できません。メンバーシップ曲の有効期限が切れると、再度聴くことはできません。そのため、 , 多くの友人が曲を MP3 形式に変換したいと考えています。ここでは、編集者が説明します。誰もが使用できるように方法を提供しています。 1. コンピュータで QQ Music を開き、右上隅の [メインメニュー] ボタンをクリックし、[オーディオトランスコーディング] をクリックし、[曲を追加] オプションを選択して、変換する必要がある曲を追加します; 2. 追加した後、曲をクリックして [mp3] に変換を選択します

プログラマーとして、私はコーディング体験を簡素化するツールに興奮しています。人工知能ツールの助けを借りて、デモ コードを生成し、要件に応じて必要な変更を加えることができます。 Visual Studio Code に新しく導入された Copilot ツールを使用すると、自然言語によるチャット対話を備えた AI 生成コードを作成できます。機能を説明することで、既存のコードの意味をより深く理解できます。 Copilot を使用してコードを生成するにはどうすればよいですか?始めるには、まず最新の PowerPlatformTools 拡張機能を入手する必要があります。これを実現するには、拡張機能のページに移動し、「PowerPlatformTool」を検索して、[インストール] ボタンをクリックする必要があります。

全角英文字を半角文字に変換する方法 日常生活や仕事の中で、パソコンのパスワードを入力するときや文書を編集するときなど、全角英文字を半角文字に変換する必要がある場面に遭遇することがあります。レイアウトの設計。全角英数字は漢字と同じ幅の文字を指し、半角英数字はそれより狭い幅の文字を指します。実際の運用では、文字や数字をより便利に処理できるように、全角英字を半角文字に変換する簡単な方法をマスターする必要があります。 1. 全角英字と半角英字

PHP チュートリアル: Int 型を文字列に変換する方法 PHP では、整数データを文字列に変換するのが一般的な操作です。このチュートリアルでは、PHP の組み込み関数を使用して int 型を文字列に変換する方法を、具体的なコード例を示しながら紹介します。キャストを使用する: PHP では、キャストを使用して整数データを文字列に変換できます。この方法は非常に簡単で、整数データの前に(文字列)を追加するだけで文字列に変換できます。以下は簡単なサンプルコードです

Linux オペレーティング システムでファイルを操作するには、開発者がファイル、コード、プログラム、スクリプトなどを効率的に作成および実行できるようにするさまざまなコマンドとテクニックを使用する必要があります。 Linux 環境では、拡張子「.a」を持つファイルは静的ライブラリとして非常に重要です。これらのライブラリはソフトウェア開発において重要な役割を果たし、開発者が複数のプログラム間で共通の機能を効率的に管理および共有できるようにします。 Linux 環境で効果的なソフトウェア開発を行うには、「.a」ファイルの作成方法と実行方法を理解することが重要です。この記事では、Linux の「.a」ファイルのインストールと構成方法を包括的に紹介します。Linux の「.a」ファイルの定義、目的、構造、作成および実行方法について見てみましょう。 Lとは何ですか
