ようこそ! シコーサクゴ Geeklog 2024年3月29日(金) 13:40 JST

MyMiniCity表示用PHPブロック関数

  • 2008年1月 1日(火) 17:47 JST
  • 投稿者:
Geeklog

最近、テクノラティで「MyMiniCity」というWebサービスを知り、試しに始めてみた。

MyMiniCityのホームページにいって、街の名前と国を選択するだけであっという間に自分の街が作れてしまった。

自分も含めて誰かにその街のサイトにアクセスしてもらうと、街がだんだん発展していく仕組みになっている。
私の街は、なかなか成長しないとだろうと思うけど、ちょくちょく見に行くたびにすこしづつ成長しているのがやはりうれしい。

となると、MyMiniCityを自分のサイトに貼り付けて、眺めてみたりしたくなるのは人情というもの。
誰かが作ってくれていないかググってみたら、やっぱりあった!(MyMiniCityはじめました - The blog of H.Fujimoto

ありがたく、このCGIを利用させていただいたのだけど、うちのヘボサーバには少し重たい気が・・・。
もしかすると、同じ事をGeeklogにあわせてPHPでやらせると少しは軽くなるかもしれないと思い、CGIのPHPへの移植を試みた。

CGIを調べてみると、HTTPリクエストでMyMiniCityのサイトを取得し、その内部のパラメータを得て、Flashアプリを起動するためのembed要素を出力するJavaScriptコードを出力するという、文章にするとかなり複雑な仕組みになっていた。

この処理をPHPコードに書き改めれば、Geeklogの場合これをPHPブロック関数にして、JavaScriptを使わずにembed要素をサイトに埋め込める。 私はHTTPリクエストを利用したことはなかったので、勉強がてらやってみたところ、結果的にうまくサイト内にMyMiniCityを表示できるようになった。 PerlとJavaScriptの起動にかかるオーバーヘッドがあるはずなので、PHPに統一できた分すこしだけ速くなったはずだ。(体感的にはあまり変わらないけど)

うまく、PHPブロック関数にまとめることができたので公開してしまおう。この成果はこのサイトのダウンロードセクションにアップしたのでGeeklogユーザ&MyMiniCityユーザの方にお試しいただきたい。

タグ:geeklog myminicity php ブロック関数