PHPを使って3分で作る3キャリア対応ケータイサイト
    このエントリをはてなブックマークに登録

本日は3分で3キャリア対応ケータイサイト作れてしまうというPHPスクリプト、「らくらくケータイ3キャリアコンバーター(仮名)」を作成してみましたので、そのご紹介をさせていただきます。

 

先日のPHP勉強会で発表させていただきました。
ご参加いただいた皆様、本当にありがとうございました。

発表資料をアップしてありますので、まずはこちらをご覧ください。

 

 

ということで、「3分で作る」とは謳っているものの、ドコモ用に作られたHTMLを他キャリア用にコンバートするだけの、実に簡素な作りです。

ドコモ用サイトを3キャリア化するのは容易ですが、1からサイトを作成する場合はもちろん3分では作れません(笑)

 

動作条件は以下の通りです。

  • PHPが動作すること(5系で動作確認済み、4でも動くかも?)
  • mod_rewriteが使えること

主な機能はこちらです。

  • キャリア判定
  • XHTML用ヘッダの出し分け
  • 絵文字変換
  • istyle変換

 

上記資料内にもありますが、簡単な使い方をご説明します。

まずはこちらから、ファイルをダウンロードします。

→ ダウンロード rakuraku_ketai_converter_0.11.lzh

※2009/11/21 エスケープ処理を加えver0.1→ver0.11となっています。旧バージョンをお使いの方は再度ダウンロードをお願いします。

 

続いて、FTPなどでファイルをアップします。

この時、ドキュメントルート(例えば「http://example.jp/」の直下)に設置する場合は、そのままアップするだけでOKです。

あとはアップしたいケータイサイト用HTMLを隣にアップすれば、ケータイから3キャリア対応サイトとして見ることができます。
もちろんフォルダを作ってその中にアップしても大丈夫です。

設置例:
public_html
 ├ .htaccess
 ├ viewer.php
 └ sample.html
http://example.jp/sample.htmlでアクセスするだけ

 

もし「/」直下ではなく、フォルダを作ってその中に設置したい場合は、付属の「.htaccess」ファイルを次のように修正してください。

例:http://example.jp/mobile/に設置したい場合

<IfModule mod_rewrite.c>
  RewriteEngine On
  
  # 設置したディレクトリに合わせて変更
  RewriteBase /mobile/      # ← ここを設置したいディレクトリ名に合わせて変更
  
  RewriteRule ^([0-9A-Za-z~_\/\-\.]+)\.html$ viewer.php?p=$1 [L]
</IfModule>

「RewriteBase /mobile/」の部分をフォルダ名に合わせて修正します。

 

コンテンツの記述ルールは次の通りです。

  • 絵文字はドコモの「&#xXXXX形式」を使う (i絵文字を使うと便利)
  • 入力文字種の指定は「istyle=”1 or 2 or 3 or 4″」で指定
  • 画像はjpgかgifを使う

 

動作サンプルはこちらです。

→ らくらくケータイ3キャリアコンバーター(仮名) サンプル

20091117_3minphp

 

自分がちょっとしたケータイサイトを作りたいときに使いたいために作ったシンプルなものですので、あまりメンテなどはしないかもしれませんが、ご要望が多ければバージョンアップするかもしれません。
なお、現在何か素敵なソフト名を募集中です。

また、もしよければ以前作ったこちらも合わせてどうぞ。
→ 実際に動いてすぐ使える「PHPによるかんたんログインサンプル」を作ってみました

 

関連:


 

最近の記事







28 Responses to “PHPを使って3分で作る3キャリア対応ケータイサイト”

  1. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]

  2. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]

  3. [2009-11-18] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org

    少し気になったんで登録。

  4. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org PHP…か…。 […]

  5. […] 介, 全キャリア対応 | No Comments » 本日は3分で3キャ リア対応ケータイサイト作れてしまうというPHPスクリプト、「らくらくケータ イ3キャリアコンバーター(仮名)」を… original article […]

  6. […] >> PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org: http://ke-tai.org/blog/2009/11/17/rakurakuconverter/ *P3 12:57 RT @GoogleAtWork_ja: Day 24:迷惑メールと日々格闘、するためにI T […]

  7. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org ガラケーサイト用のテンプレートファイル DoCoMo用に作成して他キャリアにコンバートする仕組み […]

  8. $_SERVER[‘REQUEST_URI’]にエスケープ処理を足し、バージョン0.11として再度公開しました。
    ご指摘いただいた皆様ありがとうございました。
    また何かありましたらご指摘よろしくお願いします。

  9. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]

  10. […] 3キャリア対応ケータイサイトが3分で作れるPHPスクリプト「らくらくケータイ3キャリアコンバーター(仮)」 […]

  11. htmlとcssしか知らない私には、サンプルの意味すらわかりません。
    使えたらとっても便利なんだろうなってことは凄くわかるので
    自分(馬鹿)にもわかるように説明してもらいたいです。

  12. ずっと絵文字を3キャリアに対応させて使う方法を探してました。他のサイトなどでも書いてあったのですが、どれも初心者には難しいプログラムを用いたりしていたので、今まで諦めてました。でもこれはめちゃくちゃ簡単でビックリしました!本当にview.phpをアップしただけで絵文字が3キャリア対応へと自動変換されて、感動しました(笑) PHPとかプログラムが分からない初心者にはとても助かります。本当にありがとうございましたm(__)m

  13. と思ったら… AUとドコモは同じ種類の絵文字が対応するのですが、ソフトバンクだと違う絵文字が対応してしまいました(涙)

    たとえば、絵文字で数字の5のやつを入れると、AUとドコモでは絵文字の5が表示されますが、ソフトバンクでは「晴れ」の絵文字になってしまいます。

    なぜでしょうか。。。

  14. なかさん
    ご利用いただきありがとうございます。
    絵文字の件、今日の夜にでも確認してみますね。
    もし問題があるようであれば修正版をアップしたいと思います。
    よろしくお願いします。

  15. matsuiさん
    お忙しい中、お返事ありがとうございます。あれから色々試行錯誤してみたのですが、やはり解決できませんでした…。matsuiさんのサンプルページをみますと、ソフトバンクでもきちんと「晴れ」の絵文字が出ていますので、恐らく私の何らかの手違いが原因かと思われます(涙)

    ちなみに、私の作成したサンプルページは以下になります。大変とても恐縮ではありますが、もしお手すきのときにソース等正しいか見て頂けましたら幸いでございます。

    http://m.sakuratan.com/index.php

    お騒がせしまして申し訳ございませんでしたm(__)m

  16. なかさん

    度々コメントありがとうございます。
    そうですね。テストしてみましたが特に問題ありませんでした。

    SJISでのテストページ
    http://ke-tai.org/up_files/rakuraku_ketai_converter/sample2.html

    UTF-8のテストページ
    http://ke-tai.org/up_files/rakuraku_ketai_converter/sample3.html

    上記ページを見てみたのですが、変換がかかっていないようです。
    このコンバーターは自動で変換がかかるのは「*.html」のファイルのみでPHPは対象になっていません。

    一応PHPからも使えるようになってはいるのですが、その場合使い方はやや難しいです。

    ※viewer.phpをrequireして、outbufferの内容をconvertメソッドに渡してやることで変換が可能なはずです。

    以上よろしくお願いします。

  17. インストールしてもなかなか動かなかったので、どうしたもんかなと思っていたらphpのバージョンが4でした・・・
    php4対応バージョンのアップをぜひお願いします。

  18. なかはら Says:

    素敵なツールありがとうございます。
    突然スミマセン。私もなかさんと同じようにsoftbankで変換がおかしくなってしまいます。ドコモ、auでは見られるのですが…数字の1がケーキ、2がビールになってしまいます。

    よろしければ下記見てみていただけませんか?

    http://hirokonakahara.com/imode/index.html

  19. なかはら Says:

    再度確認しながら作り直したら解消されました!ほんとに便利!!&いろいろ勉強になりました!!ありがとうございます!!

  20. […] 文字変換ライブラリ、なんかかませるだけでめっちゃ簡単にできるやつがあった気がしたんだけどなー・・・なんだったかな。。 05:49 あ、これか。 http://ke-tai.org/blog/2009/11/17/rakurakuconverter/ […]

  21. まてなか Says:

    小さいフォントを出力するときは、タグでくくればよいのでしょうか。
    タグを検出してCSSに置き換えていただいてますか?
    PHP内にそのような記述が見つからず、docomoではタグが聞かないようなのですが。。

  22. まてなかさん

    コメントありがとうございます。
    PHP内でタグからCSSへの置き替えは行っていません。
    多分少し認識が違っているのだと思いますが、本プログラムはドコモ用に書かれたHTMLを他キャリア用に変換して表示するものです。

    状況がわからないので予想なのですが、ドコモでタグが効かないのはXHTML形式のタグ(style)を使っていないのではないでしょうか。(fontタグなどは使えません)
    過去の記事(http://ke-tai.org/blog/2008/04/03/docomocss/)が参考になるのではないかと思います。
    よろしくお願いいたします。

  23. まてなか Says:

    早速のご回答ありがとうございます!
    タグをそのままコメント欄に書いてしまったので、削除されて意味不明な文章になってしまってました。。
    スライド内で、
    文字サイズは2段階 通常と<small>で
    と書いてあるのですが、
    docomoでは<small>が使用できません。
    ここをどのように対応されているのか、教えていただけますか。

    ・・ということをお伝えしたかったです。
    よろしくお願い致します。

  24. まてなかさん

    ドコモでXHTML形式の場合、smallタグは使えないかもですね。
    こちらの比較表を見ると良いと思います。
    http://www.nttdocomo.co.jp/binary/pdf/service/imode/make/content/browser/xhtml/HTML_XHTML_taglist.pdf

    具体的にはspanやdivタグにstyle=”font-size:small”をつければOKと思います。

  25. すばらしいツールを提供いただきありがとうございます。
    Smartyのoutputfilterで convertを呼び出して使ってみたのですが
    Docomo,Softbankは問題ないのですがAUが化けてしまいます。

    PHPの文字コードはUTF-8でSmartyテンプレートはShift_JISで書いています。

    outputfilterで SJISにmb_convertするフィルタを動かした後に本ツールのconvertを実行してます。
    これがいけないんでしょうか・・・

    絵文字の仕様をよくわかって無くて恐縮ですがアドバイスいただけますと助かります。

  26. 上記の件、解決しました!
    detect_encodingでUTF-8と判定されちゃってましたので、処理分岐をコメントアウトし、sjisのコードを出すようにしたらうまく行きました。
    シンプルで、使いやすい。ありがとうございます!

  27. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.orgで作る3キャリア対応ケータイサイト 2009/11/17 火曜日 matsui posted in ソフト紹介, 全キャリア対応 | no comments » 本日は3分で3キャ […]

  28. […] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.orgくかも?) mod_rewriteが使えること 主なはこちらです。 キャリア判定 xhtml用ヘッダの出し分け 絵文字変換 istyle変換 上記資料内に […]

コメントを書く