PHP: 2008年5月アーカイブ

今月の流行は携帯サイトとPHPのもぎゃです。こんにちは。

携帯絵文字変換スクリプトをPHPで作ってみた。 携帯ホームページを作ろう! -ちょっと詳しいモバイルサイトの作り方-というのがあって、フリーで使えるのはすばらしい!と思ったのですが。

これどうも、ドコモの絵文字が正しく出ません。すくなくとも手元の環境では出ない。


  • サーバ:Apache/2.0.52

  • PHP:PHP 5.1.6 (cli) (built: Oct 26 2007 13:49:00)

  • 携帯:F705i。あと、i-mode HTML Simulator II ver5.1も試したけど出なかった。

 しょうがないのでデバッグしました。

結論

 emoji.csvをこっちに差し替えると出るみたいです。
emoji.csv

元のファイルとの違いは、iモード絵文字をダブルクオーテーションでくくっただけです。

問題だったこと

 作ろうiモードコンテンツ:基本絵文字一覧 | サービス・機能 | NTTドコモを参考に、べたにphpファイルに文字列を貼り付けたら、これは表示できました。

 Wiresharkでパケットを拾ってのぞいてみると、データが化けているとかじゃなくて、そもそもデータが出ていません。

 さかのぼっていくと、そもそも$emoji_array[1]が空っぽのままみたいです。

fgetcsvでググってみると、どうもこの関数は結構危険らしく。

テレパス・ラボ : fgetcsv()で日本語が読み込めない

iモード絵文字も、SJIS範囲外とはいえ日本語っぽい文字なのは同じなので、環境によって空っぽになってしまうんじゃないでしょうか。上記サイトで言われているように、問題の文字列をダブルクオーテーションでくくってみたら動いたので、とりあえずご報告まで。



このアーカイブについて

このページには、 2008年5月 以降に書かれたブログ記事のうち PHP カテゴリに属しているものが含まれています。

次のアーカイブは PHP: 2008年7月 です。

最近のコンテンツは インデックスページ で見られます。過去に書かれたものは アーカイブのページ で見られます。

Powered by
Movable Type