PHP研究にょ

owl2006-06-28

因みに当研究所(跡)は某出版社とはなんの関係もございません。
無駄に長い(しかも、自分で読んでもおもしろくない)ので括りました。因みに「研究成果」としてできあがりつつあるのはこんなもの。ニーズが無いことぐらいわかっているのだが。



携帯電話でユーザー入力を反映したナニカをもにょもにょしようと思ったら、とりあえず思いつくのは 3つの方法だ。即ち、ついこの間やっとこさ第一作を作りあげたばかりの Flash か、「Javascript と似ているのは名前だけだ」という脅しにも近い口上によってその実現(不)可能性が既に明らかになっている Java アプレットか、さもなくば「古典にして今なお伝家の宝刀」CGI である。
幸いにして、どの方法にしても、フリーで配布されているものを掻き集めれば一応なにがしかのものを完成させることができる。いい時代になったものだ。あとはやる気と時間と気合い。
いまとりあえずやってみたいのは、いくつかの数値を取得し、べき演算を含む計算をしていくつかの数値にして返す、というものなので、フォームをいちから自作しなくてはならない Flash で実現するのはしんどすぎる。Java についてはまったくいちから取り組まなくてはならないし、さらに i-appli とするにはもう一段階、別のことを覚えなくてはならないらしい。できあがったものは完全に携帯専用(しかも DoCoMo 専用)になるので、ここでもにょもにょやっているような活動の一環とはちょっと違うような気もする。
じゃ、CGI か。しかし契約プロバイダも、メインでもにょもにょしているはてなも自作 CGI をどうこうして遊ぶ場所を提供してくれていない。できれば、使い慣れたノートの片隅で何事か実現してみました、というノリのほうが好みといえば好みなわけだが、背に腹は代えられない。無料で且つ CGI 可という奇特な HP サービスを探す。ちょろっと CGI がいじくれればいいから、容量は全然要らない。無料にこだわるのは、勿論お金が無いという切実且つ本質的な事由もあるのだが、直接支出をせずにやる、ということに充分な、若しくはその「充分」以上の意味があると考えているからだ。また、無料なとこだと大抵は CGI 不可だから、選択肢が極端に狭まることになる。だから、迷う手間が省ける。
CGI にもいろいろ種類があることぐらいなら、私(おうる)でも知っている。その中でも手軽にできるというと、perl だろうと思った。知り合いにずいぶん以前からの perl 遣いがいて、イメージ的に気軽に使いこなしている*1ような印象があった。それに、どこが手軽なのか、その一部分ぐらいならこの私(おうる)でも知っている。コンパイルしなくていいとかそういうことだ。
なにをどうすればいいのか、ざっと調べてみる。するとふと目にとまったのが「余程のことがない限り Perl など使う必要が無く、PHP を使えばいい」というような記述。
余程のことな!? (微妙によつばテイストで)
私(おうる)がやりたいことは確かに全くもって「余程」ではない。しかも PHP だと HTML に埋め込めて、サーバの側で PHP 環境を用意してくれていればこちらでは他に何も要らないではないか。ということであっさり方針転換。よかろう。 PHP でいきましょう。
で、その PHP に関しては、いろいろな情報収集の方法があるとは思うが、この手の資料探し(ネット上)でひとつおすすめなのがはてなブックマークでの検索だ。これは使えそうかな、と思うページをブックマークしようとすると、既に多くの人からブックマークされているというケースが多かった。つまり、ぐぐってもいいが、はてB をうまく使えば自力での確認判断の時間を省略できる。で、PHP 。雰囲気としては Javascript のそれとかなり近いものがある。Javascript よりは「堅め」か。ただ、そのものズバリ、かゆいところに手が届くタイプのマニュアルが web 上にはなかなか無かった。このへんこのあたりをぱらぱらやりながら、当然試行錯誤になるわけだが、苦労して書いたそのソースも、レンタルサーバ上では全く動いてくれない。
今までの私(おうる)のやり方では、こういうときにはとにかく本屋へふらっと行って、該当する本のコーナーでリファレンス系の本と実例付き教則本的な本をそれぞれ 1冊、計 2冊ほど仕入れて、それを見ながらとにかく 1作品仕上げてみる、ということで割と間違いがなかった。大物を仕上げるには不適当なのだろうけど、私(おうる)のようにちょっと役立つものを作って使いたいというときには悪くない方法なのではないかと思う。今回も、そうすべきだったかもしれない。
私(おうる)の持っているホームページ作成ソフトは思いっきり古いので当然ながら PHP 環境など持っていない。それに、CGI はサーバ上で気軽に試すとものすごい迷惑をかける危険性もあるというふうに聞いているから、ここはやはりできることならローカルにテスト環境を用意したい。しかし、こればっかりは流石に手軽にというわけには…
…探せばあるものである。
私が導入したのは「phpdev」というもの。*2 どこかの説明をにらみ合わせながらインストールし、バッチファイルを起動すると、久々に見る DOS 窓がいくつか開き、http://localhost/ が起動した。自宅サーバ開設なんかでは、これの数十倍わくわくするんだろうなとか思った。…ともかく、実験。適当に書くだけ書いてみた PHP ファイルも、まだ思い通りではないが走るには走るようだ。エラーメッセージとエラー行も出してくれるから、軽いデバッグならできる。
結局、ローカルで動くものが何故サーバー上で動かないのか、については、単に PHP が弾かれてしまっているから、ということのようだった。恐らくだが、広告挿入等がうまくできないでいるとかそういう理由だろう。そこで急遽、別の無料 HP スペース*3を適当に探して、登録。まずは挨拶から、そしてPHP の存在証明。でもって試作品(←今後適宜更新予定)。
【後日追記】レンタルサーバが気付かぬ間に消失していたようなので、サーバ変更。→ http://hum.uah.jp/
携帯でも動くようだ。バグは一応取れたようだがいまいち仕様が固まっていない。もう少し何とかならないものかという点もある。ただまあ、とにかく動くことはわかった。自分の作ったものが手の中で動いていると妙に嬉しい、というのは、ポケコン出身者ならではの感覚だったりするのだろうか。
さて、これであれかな、「PHP も、使えます。」って言っていいかな、いやダメだよね。データベース操作とかやってないし。今日日こういう「なんとかやる」タイプの小技師ってあんまり流行らないみたいだし。どこか、そういう技術を必要としている世界って、無いものだろうか…。
よかったらスカウトしてください。

*1:そのときは酔歩のようなシミュレーションをしていた。

*2:【後日追記】現状では「XAMPP」のほうが優秀、だそうだ。【2006/08/01】

*3:しかしこちらも、PHP ドキュメントには広告がうまいこと挿入されないらしい。私(おうる)にとっては一向に構わないことなのであるが、このまま使用していて規約違反とか言われるのもなんか嫌だな。 ←ヘルプを読んで解決(.php ドキュメントにも広告挿入されるようになった)。指定の内容の .htaccess ファイルを同一ディレクトリに入れておけばいいそうだ。