PHPコード変換関数の応用テクニックについて詳しく説明します。


PHPには膨大な数の関数があります。私たちの需要応用をサポートします。以下に紹介するこの関数はPHP符号化変換関数に関するものです。皆さんのためになりたいです。mbconvert_.encoding関数はPHP内部の多バイト文字列符号化変換関数です。
ページの文字化けの問題を解決するために、必要な使用状況(例えば、GB 2312符号化環境でAjaxを使用して生成された文字化けの問題を解決する)で符号化変換が容易にでき、使用が非常に便利で、効率が非常に高く、ほとんどの符号化がサポートされています。PHP 4>=4.0.6、PHP 5バージョン対応。
PHPコード変換関数の原型:
/** 
*複数バイト文字列符号化変換関数 
* 
*@param string strは符号化変換を行う文字列が必要です。 
*@param string to_encoding指定をある種類のコードに変換します。
例えば、gb 2312、gbk、utf-8などです。 
*@param mixed from_encoding混合指定元の文字列のコード
例えば、JIS、eucjp-winを同時に指定し、sjis-win混成コード 
*@return string 
string mbconvert_.encoding(string str,string to_)encoding[mixed from]encoding) 
PHP符号化変換関数使用例:
1、GBKコードの文字列をUTF-8符号化文字列に変換する

< ?PHP  
header("content-Type: text/html; 
charset=Utf-8");  
echo mb_convert_encoding("
       ", "UTF-8", "GBK");  
?> 
2、UTF-8符号化文字列をGB 2312符号化文字列に変換する。

//           utf-8 
           
< ?PHP  
header("content-Type: text/html; 
charset=gb2312");  
echo mb_convert_encoding("
       ", "gb312", "utf-8");  
?> 
3、ページ全体を変換する
この方法はすべての符号化環境に適用される。このように、前128文字以外の文字セットは全部NCR(Numeric character reference)を使っています。「漢字」のように、「&_」に変換されます。23333;このような符号化は、任意の符号化環境においてもページが正常に表示されます。
PHPファイルのヘッダに下記の3行のコードを付けます。

mb_internal_encoding("gb2312");  
//    gb2312           
mb_http_output("HTML-ENTITIES"); ob_start('mb_output_handler');  
mb_を使うconvert_.encoding関数はPHPのmbstring(multi-byte string)拡張を有効にする必要があります。
PHPのmbstring拡張がオンされていない場合は、以下のような設定が必要です。PHPはこの拡張をサポートします。
1、windowsサーバ環境
PHP.iniファイルを編集します。extension=PHP_mbstring.dllの前の。削除して、ウェブサーバを再起動します。
2、Linuxサーバ環境
コンパイル配置時に--enable-mbstring=cnでパラメータをコンパイルしてPHPのコンパイルを行います。
終了語:
PHPコードの変換関数を使っていますが、まだ何か分からないところがありましたら、「PHPマニュアル」を参照してください。