1. php配列内で中国語でソートする必要がありますが、一般的にutf8形式のファイルが使用されるため、asortによる直接ソートは機能しません。 gbkとgb2312を使用できます。これは、いくつかの形式のエンコードに関係があります。 gbk と gb2312 自体のコーディングはピンインでソートされています。
コードは次のとおりです
2. MySQL では、フィールドのソートやクエリを行うことがよくありますが、中国語でソートや検索を行うと、漢字のソートや検索結果が間違っていることがよくあります。 この状況は、MySQL (www.jb51.net) の多くのバージョンで存在します。
この問題が解決されない場合、MySQL は実際に中国語を処理できなくなります。 この問題の原因は、MySQL が文字列のクエリ時に大文字と小文字を区別しないため、通常、ISO-8859 文字セットがデフォルトの文字セットとして使用され、比較プロセス中に中国語コード文字の大文字と小文字の変換が発生します。 。 この現象。
解決策:
中国語を含むフィールドの場合は、「binary」属性を追加してバイナリ比較を行います。たとえば、「name char(10)」を「name char(10)binary」に変更します。
ソース コードを使用して MySQL をコンパイルする場合、MySQL のコンパイル時に --with--charset=gbk パラメータを使用できるため、MySQL は中国語の検索と並べ替え (デフォルトは latin1) を直接サポートします。 extra-charsets=gb2312,gbk を使用して複数の文字セットを追加することもできます。
テーブル構造を変更したり、MySQL を再コンパイルしたくない場合は、クエリ ステートメントの一部の順序で CONVERT 関数を使用することもできます。たとえば
コードは次のとおりです