PHPを使って3分で作る3キャリア対応ケータイサイト
Tweet
本日は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キャリアコンバーター(仮名) サンプル
自分がちょっとしたケータイサイトを作りたいときに使いたいために作ったシンプルなものですので、あまりメンテなどはしないかもしれませんが、ご要望が多ければバージョンアップするかもしれません。
なお、現在何か素敵なソフト名を募集中です。
また、もしよければ以前作ったこちらも合わせてどうぞ。
→ 実際に動いてすぐ使える「PHPによるかんたんログインサンプル」を作ってみました
関連:
- 実際に動いてすぐ使える「PHPによるかんたんログインサンプル」を作ってみました
- ケータイの端末ID・ユーザIDの取得についてまとめてみました(サンプルプログラム編)
- PHPで絵文字を壊さずに文字コードや全角半角変換を行う方法
11月 18th, 2009 at 8:01:34
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]
11月 18th, 2009 at 10:53:40
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]
11月 18th, 2009 at 17:22:30
[2009-11-18] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org
少し気になったんで登録。
11月 18th, 2009 at 23:03:15
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org PHP…か…。 […]
11月 19th, 2009 at 1:21:09
[…] 介, 全キャリア対応 | No Comments » 本日は3分で3キャ リア対応ケータイサイト作れてしまうというPHPスクリプト、「らくらくケータ イ3キャリアコンバーター(仮名)」を… original article […]
11月 19th, 2009 at 10:14:15
[…] >> 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 […]
11月 20th, 2009 at 0:05:15
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org ガラケーサイト用のテンプレートファイル DoCoMo用に作成して他キャリアにコンバートする仕組み […]
11月 21st, 2009 at 14:01:01
$_SERVER[‘REQUEST_URI’]にエスケープ処理を足し、バージョン0.11として再度公開しました。
ご指摘いただいた皆様ありがとうございました。
また何かありましたらご指摘よろしくお願いします。
11月 22nd, 2009 at 23:56:22
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org […]
11月 23rd, 2009 at 4:37:59
[…] 3キャリア対応ケータイサイトが3分で作れるPHPスクリプト「らくらくケータイ3キャリアコンバーター(仮)」 […]
11月 28th, 2009 at 14:02:12
htmlとcssしか知らない私には、サンプルの意味すらわかりません。
使えたらとっても便利なんだろうなってことは凄くわかるので
自分(馬鹿)にもわかるように説明してもらいたいです。
12月 2nd, 2009 at 4:25:29
ずっと絵文字を3キャリアに対応させて使う方法を探してました。他のサイトなどでも書いてあったのですが、どれも初心者には難しいプログラムを用いたりしていたので、今まで諦めてました。でもこれはめちゃくちゃ簡単でビックリしました!本当にview.phpをアップしただけで絵文字が3キャリア対応へと自動変換されて、感動しました(笑) PHPとかプログラムが分からない初心者にはとても助かります。本当にありがとうございましたm(__)m
12月 2nd, 2009 at 4:48:05
と思ったら… AUとドコモは同じ種類の絵文字が対応するのですが、ソフトバンクだと違う絵文字が対応してしまいました(涙)
たとえば、絵文字で数字の5のやつを入れると、AUとドコモでは絵文字の5が表示されますが、ソフトバンクでは「晴れ」の絵文字になってしまいます。
なぜでしょうか。。。
12月 2nd, 2009 at 15:42:38
なかさん
ご利用いただきありがとうございます。
絵文字の件、今日の夜にでも確認してみますね。
もし問題があるようであれば修正版をアップしたいと思います。
よろしくお願いします。
12月 2nd, 2009 at 21:43:11
matsuiさん
お忙しい中、お返事ありがとうございます。あれから色々試行錯誤してみたのですが、やはり解決できませんでした…。matsuiさんのサンプルページをみますと、ソフトバンクでもきちんと「晴れ」の絵文字が出ていますので、恐らく私の何らかの手違いが原因かと思われます(涙)
ちなみに、私の作成したサンプルページは以下になります。大変とても恐縮ではありますが、もしお手すきのときにソース等正しいか見て頂けましたら幸いでございます。
http://m.sakuratan.com/index.php
お騒がせしまして申し訳ございませんでしたm(__)m
12月 3rd, 2009 at 10:08:31
なかさん
度々コメントありがとうございます。
そうですね。テストしてみましたが特に問題ありませんでした。
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メソッドに渡してやることで変換が可能なはずです。
以上よろしくお願いします。
2月 12th, 2010 at 10:48:04
インストールしてもなかなか動かなかったので、どうしたもんかなと思っていたらphpのバージョンが4でした・・・
php4対応バージョンのアップをぜひお願いします。
2月 12th, 2010 at 20:20:06
素敵なツールありがとうございます。
突然スミマセン。私もなかさんと同じようにsoftbankで変換がおかしくなってしまいます。ドコモ、auでは見られるのですが…数字の1がケーキ、2がビールになってしまいます。
よろしければ下記見てみていただけませんか?
http://hirokonakahara.com/imode/index.html
2月 15th, 2010 at 15:35:05
再度確認しながら作り直したら解消されました!ほんとに便利!!&いろいろ勉強になりました!!ありがとうございます!!
3月 17th, 2010 at 13:06:04
[…] 文字変換ライブラリ、なんかかませるだけでめっちゃ簡単にできるやつがあった気がしたんだけどなー・・・なんだったかな。。 05:49 あ、これか。 http://ke-tai.org/blog/2009/11/17/rakurakuconverter/ […]
3月 25th, 2010 at 22:17:31
小さいフォントを出力するときは、タグでくくればよいのでしょうか。
タグを検出してCSSに置き換えていただいてますか?
PHP内にそのような記述が見つからず、docomoではタグが聞かないようなのですが。。
3月 25th, 2010 at 22:39:47
まてなかさん
コメントありがとうございます。
PHP内でタグからCSSへの置き替えは行っていません。
多分少し認識が違っているのだと思いますが、本プログラムはドコモ用に書かれたHTMLを他キャリア用に変換して表示するものです。
状況がわからないので予想なのですが、ドコモでタグが効かないのはXHTML形式のタグ(style)を使っていないのではないでしょうか。(fontタグなどは使えません)
過去の記事(http://ke-tai.org/blog/2008/04/03/docomocss/)が参考になるのではないかと思います。
よろしくお願いいたします。
3月 25th, 2010 at 23:03:29
早速のご回答ありがとうございます!
タグをそのままコメント欄に書いてしまったので、削除されて意味不明な文章になってしまってました。。
スライド内で、
文字サイズは2段階 通常と<small>で
と書いてあるのですが、
docomoでは<small>が使用できません。
ここをどのように対応されているのか、教えていただけますか。
・・ということをお伝えしたかったです。
よろしくお願い致します。
3月 25th, 2010 at 23:07:36
まてなかさん
ドコモで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と思います。
8月 3rd, 2010 at 21:06:08
すばらしいツールを提供いただきありがとうございます。
Smartyのoutputfilterで convertを呼び出して使ってみたのですが
Docomo,Softbankは問題ないのですがAUが化けてしまいます。
PHPの文字コードはUTF-8でSmartyテンプレートはShift_JISで書いています。
outputfilterで SJISにmb_convertするフィルタを動かした後に本ツールのconvertを実行してます。
これがいけないんでしょうか・・・
絵文字の仕様をよくわかって無くて恐縮ですがアドバイスいただけますと助かります。
8月 3rd, 2010 at 21:13:36
上記の件、解決しました!
detect_encodingでUTF-8と判定されちゃってましたので、処理分岐をコメントアウトし、sjisのコードを出すようにしたらうまく行きました。
シンプルで、使いやすい。ありがとうございます!
6月 12th, 2011 at 9:48:09
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.orgで作る3キャリア対応ケータイサイト 2009/11/17 火曜日 matsui posted in ソフト紹介, 全キャリア対応 | no comments » 本日は3分で3キャ […]
6月 25th, 2011 at 15:03:26
[…] PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.orgくかも?) mod_rewriteが使えること 主なはこちらです。 キャリア判定 xhtml用ヘッダの出し分け 絵文字変換 istyle変換 上記資料内に […]