[PHP pack()関数]

pack(”c*”,27,36,69,47,15)
と、すると、vodafone で電球が表示されますが、関数内部でどのような処理がされているのでしょうか?
それがわかれば、全ての絵文字を処理したいと考えております。
当方はvodafone 対応のコンテンツを作成中です。
よろしくお願いいたしますm(__)m

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/11/05 20:32:13
  • 終了:--

回答(2件)

id:RC30-popo No.1

POPO回答回数345ベストアンサー獲得回数132005/11/06 00:10:11

ポイント40pt

27,36,69,47,15をそれぞれ1バイトのバイナリ表現に直して並べているだけです。


16進1バイトづつの並びに直すと、

1B 24 45 2F 0F

の5バイトになります。これはASCIIコード表(参考URL2つ目参照)を眺めると、

ESC ’$’ ’E’ ’/’ SI

というコード並びです。

ボーダフォン対応の絵文字に割り当てられたコードは参考URLの3つ目を見て下さい。

この中のPage2 UNICODEでE10Fが電球です。この文字に割り当てられたウェブコードをブラウザからコピペして、エディタか何かに貼って、ファイルにセーブしてから16進ダンプができるツールで開いてみると

1B 24 45 2F 0F

という並びになっていることがわかると思います。


要は各絵文字に割り当てられたウェブコード通りのバイト並びを出力すれば表示が可能です。


id:akame23

ご回答ありがとうございます。

参考URL を基に、基本から学ばせて頂きます。

2005/11/07 15:48:22
id:n85 No.2

n85回答回数236ベストアンサー獲得回数212005/11/06 07:24:39

ポイント20pt

perl でバイナリ文字列を書き出せばよい、ということですね。


phpではなくPerlではありますが、分かりやすいページはこちらです。


その他、参考URLをご確認ください。

id:akame23

ご回答ありがとうございます。

とても難しいように感じますが、参考URL を理解する事で何とかなりそうです!

ありがとうございました。

2005/11/07 15:51:07

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません