php 文字エンコード変換クラス は、ANSI、Unicode、Unicode ビッグ エンディアン、UTF-8、および UTF-8 Bom 変換をサポートします。
#4 つの一般的なテキスト ファイルのエンコード方法
ANSI エンコード:
ファイル ヘッダーなし (ファイル エンコードの先頭にある象徴的なバイト)
ANSI エンコードでは、英数字が 1 バイトを占め、中国語の文字が 2 バイトを占めます
キャリッジ リターンおよびライン フィード文字、シングル バイト、16 進表現は 0d 0a
UNICODE エンコード:
#ファイル ヘッダー、16 進表現は FF FE各文字は 2 バイトでエンコードされます
キャリッジ リターンおよび改行文字、ダブル バイト、16 進表現は 000d 000a
##Unicode ビッグ エンディアン エンコーディング:
16 進表現ファイル ヘッダーのファイル ヘッダーは FE FF
次のエンコーディングでは、文字の高位ビットが前に、低位ビットが後ろに配置されます。これは、Unicode エンコーディングを逆にしたものとまったく同じです
キャリッジ リターンとライン フィード文字、ダブル バイト、16 進表現は 0d00 0a00
UTF-8 エンコード:
ファイル ヘッダー、16 進表現は EF BB BF
UTF-8 は Unicode の可変長です 文字エンコーディング、数字、文字、キャリッジ リターン、漢字は 3 バイトで表現されます。
復帰と改行、1 バイト、16 進表現 0d 0a
# の変換原理##: まず文字エンコーディングを UTF-8 に変換し、次に UTF-8 から対応する文字エンコーディングに変換します。
CharsetConv.class.php
<?php
/** 字符编码转换类, ANSI、Unicode、Unicode big endian、UTF-8、UTF-8+Bom互相转换
* Date: 2015-01-28
* Author: fdipzone
* Ver: 1.0
*
* Func:
* public convert 转换
* private convToUtf8 把编码转为UTF-8编码
* private convFromUtf8 把UTF-8编码转换为输出编码
*/
class CharsetConv{ // class start
private $_in_charset = null; // 源编码
private $_out_charset = null; // 输出编码
private $_allow_charset = array('utf-8', 'utf-8bom', 'ansi', 'unicode', 'unicodebe');
/** 初始化
* @param String $in_charset 源编码
* @param String $out_charset 输出编码
*/
public function __construct($in_charset, $out_charset){
$in_charset = strtolower($in_charset);
$out_charset = strtolower($out_charset);
// 检查源编码
if(in_array($in_charset, $this->_allow_charset)){
$this->_in_charset = $in_charset;
}
// 检查输出编码
if(in_array($out_charset, $this->_allow_charset)){
$this->_out_charset = $out_charset;
}
}
/** 转换
* @param String $str 要转换的字符串
* @return String 转换后的字符串
*/
public function convert($str){
$str = $this->convToUtf8($str); // 先转为utf8
$str = $this->convFromUtf8($str); // 从utf8转为对应的编码
return $str;
}
/** 把编码转为UTF-8编码
* @param String $str
* @return String
*/
private function convToUtf8($str){
if($this->_in_charset=='utf-8'){ // 编码已经是utf-8,不用转
return $str;
}
switch($this->_in_charset){
case 'utf-8bom':
$str = substr($str, 3);
break;
case 'ansi':
$str = iconv('GBK', 'UTF-8//IGNORE', $str);
break;
case 'unicode':
$str = iconv('UTF-16le', 'UTF-8//IGNORE', substr($str, 2));
break;
case 'unicodebe':
$str = iconv('UTF-16be', 'UTF-8//IGNORE', substr($str, 2));
break;
default:
break;
}
return $str;
}
/** 把UTF-8编码转换为输出编码
* @param String $str
* @return String
*/
private function convFromUtf8($str){
if($this->_out_charset=='utf-8'){ // 输出编码已经是utf-8,不用转
return $str;
}
switch($this->_out_charset){
case 'utf-8bom':
$str = "\xef\xbb\xbf".$str;
break;
case 'ansi':
$str = iconv('UTF-8', 'GBK//IGNORE', $str);
break;
case 'unicode':
$str = "\xff\xfe".iconv('UTF-8', 'UTF-16le//IGNORE', $str);
break;
case 'unicodebe':
$str = "\xfe\xff".iconv('UTF-8', 'UTF-16be//IGNORE', $str);
break;
default:
break;
}
return $str;
}
} // class end
?>
unicode ビッグ エンディアンから utf-8 bom<?php require "CharsetConv.class.php";
$str = file_get_contents('source/unicodebe.txt');
$obj = new CharsetConv('unicodebe', 'utf-8bom');
$response = $obj->convert($str);
file_put_contents('response/utf-8bom.txt', $response, true);
?>
php 文字エンコーディング変換クラス。ANSI、Unicode、Unicode ビッグ エンディアン、UTF-8、UTF-8 Bom 関連コンテンツの相互変換をサポートします。関連コンテンツについては、php 中国語 Web サイトに注目してください。 関連推奨事項:
使用方法についてheader、headers_sent、headers_list、header_remove 説明
PDO を介して mysql によって返されるフィールドの整数型を文字列型に変更する解決策
以上がPHP文字エンコード変換クラス関連コンテンツの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPは、多数のWebサイトとアプリケーションをサポートし、フレームワークを通じて開発ニーズに適応するため、近代化プロセスで依然として重要です。 1.PHP7はパフォーマンスを向上させ、新機能を紹介します。 2。Laravel、Symfony、Codeigniterなどの最新のフレームワークは、開発を簡素化し、コードの品質を向上させます。 3.パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率をさらに改善します。

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。

PHPでは、クローンキーワードを使用してオブジェクトのコピーを作成し、\ _ \ _クローンマジックメソッドを使用してクローン動作をカスタマイズします。 1.クローンキーワードを使用して浅いコピーを作成し、オブジェクトのプロパティをクローン化しますが、オブジェクトのプロパティはクローニングしません。 2。\ _ \ _クローン法は、浅いコピーの問題を避けるために、ネストされたオブジェクトを深くコピーできます。 3.クローニングにおける円形の参照とパフォーマンスの問題を避けるために注意し、クローニング操作を最適化して効率を向上させます。

PHPはWeb開発およびコンテンツ管理システムに適しており、Pythonはデータサイエンス、機械学習、自動化スクリプトに適しています。 1.PHPは、高速でスケーラブルなWebサイトとアプリケーションの構築においてうまく機能し、WordPressなどのCMSで一般的に使用されます。 2。Pythonは、NumpyやTensorflowなどの豊富なライブラリを使用して、データサイエンスと機械学習の分野で驚くほどパフォーマンスを発揮しています。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

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

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン
