• ベストアンサー

PHPで4桁の文字コード(SHIFTJIS)を取得したい

お世話になります。 PHPでSIFT-JISの4桁の文字コードを取得したいのですが、 そういった関数などありますでしょうか? 例えば、「あ」ならば「82A0」 「PHP 文字コード」などでGoogleで検索しても文字コードの変換など についてしか情報が無く困っています。 ご存知の方いらっしゃいましたらご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#111181
noname#111181
回答No.2

下記スクリプトをシフトJISで保存し、PHP5以上で実行してみてください。 ------------------------- <?php $str = 'あいうえお'; //サンプル文字列 $arr = str_split($str); //1バイトずつ配列に分解 foreach ($arr as $ch) echo dechex(ord($ch)); //16進コードで表示 ?>

aonokaze
質問者

お礼

遅くなりましたが、ありがとうございます! スクリプト動きました。 これでやりたいことが出来そうです! まだ解読できていない部分がありますが、後は独学で出来そうです。 本当にありがとうございます。

その他の回答 (3)

  • yuu_x
  • ベストアンサー率52% (106/202)
回答No.4

どうでもいいことだけど。 echo bin2hex(b'あいうえお');

aonokaze
質問者

お礼

ありがとうございます。 bin2hexなんて方法もあるんですね。 色々参考になります!

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

#2さんのをヒントに、正規表現のe修飾子付きでやればいけるのでは? <?php $str="あいうえお"; $pattern="/./e"; print preg_replace($pattern,"dechex(ord($0))",$str); ?>

aonokaze
質問者

お礼

ご回答ありがとうございます! 正規表現についてはまだ勉強してないので 調べてみます!

  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.1

確認したい文字は、既に分かっているのであれば、 即ち、 文字コード も分かっているはずです。 単に、バイナリコード(16進)を テキストモードに変換すれば 良いのでは?

aonokaze
質問者

お礼

ありがとうございます。 >単に、バイナリコード(16進)を テキストモードに変換すれば良いのでは? PHP初心者なので思いつきませんでした。 ありがとうございます!

関連するQ&A