2
私はPython
でこれを行う方法を知っている:ユニコードからPHPでGB18030にエンコードするにはどうしたらいいですか?
In [1]: u'中华人民共和国'.encode('GB18030').encode('base64')
Out[1]: '1tC7qsjLw/G5srrNufo=\n'
しかし、私はPHPでこれを行う必要がある、と私はそれを行うかどうかはわかりません。
私はPython
でこれを行う方法を知っている:ユニコードからPHPでGB18030にエンコードするにはどうしたらいいですか?
In [1]: u'中华人民共和国'.encode('GB18030').encode('base64')
Out[1]: '1tC7qsjLw/G5srrNufo=\n'
しかし、私はPHPでこれを行う必要がある、と私はそれを行うかどうかはわかりません。
iconv
を使用すると、文字列をUTF-8(または最初のエンコーディングが何であれ)からGB18030に変換し、次にbase64_encode
という結果に変換できます。例:
echo base64_encode(iconv('UTF-8', 'GB18030', '中华人民共和国'));
出力:PHPネイティブUnicode文字列を持っていないこと
1tC7qsjLw/G5srrNufo=
注 - 彼らはバイトのちょうど束している、あなたはエンコーディングを指定する必要がありますので、文字列が入っています。PHPの文字列リテラルであれば、ファイルに使用したエンコーディングになります。
Unicodeは*(*)*(2進)文字エンコードではないことに注意してください。 – Biffen