2007年5月31日木曜日

Google Maps日本版でマップレットを使う

 Google Mapsで、ブックマークレット的なものをGoogle Mapsに適用できるようにしたGoogle Mappletsが公開された。アメリカ版(?)のGoogle Mapsで実際に使ってみるとなかなか楽しげ。"Earthquake search"で見たら地震が多いのは日本だけではなく東南アジアまでそのラインが伸びているが分かったり。
 こういうのってマッシュアップのし易さで普及したGoogle Mapsらしいと思う。純粋に地図として比べると他の地図の方がいいわけだし。

 いちいちアメリカ版Google Mapsを見るのもなあと思って、試しに日本版のGoogle MapsのURLをいじってみたら、こちらでも普通にマップレットが使えた。そういえばアメリカ版のGoogle Mapsも日本語表示されてるし、ドメインが違うだけで中身は同じなのかなぁ。

2007年5月29日火曜日

PHPでhttpステータス404を返す方法

 小粋空間: WordPress でステータスコード 404(Not Found)を返却するエラーページを作るを参考にしたらPHPで簡単に404を返せた。他の出力をする前に下記の1行を書くだけ。

header("HTTP/1.1 404 Not Found");

 しかも、今まで知らなかったが404を返しつつページの表示も出来た!これで検索エンジン向けも人間向けも万事解決。たしかにAll Aboutとかも404を返しつつ見つかりませんでしたページを表示してるね。

2007年5月27日日曜日

Google AdSenseのFlash?広告

 コンテンツ向けのAdSenseってテキスト広告だけだと思っていた。AdSense設定のページでは「テキストおよびイメージ広告」「テキスト広告」「イメージ広告」から選べるけど、たしか実質的にテキスト広告しか選べなかった気がする。

 でも、イメージ広告が表示される可能性が高いページを見つけた。
(2007/06/11追記:リンク先のAdSenseが変ったのでFlash広告は表示されづらくなった。でも変りにAdSenseとしてビデオプレイヤー(!)をまれに表示するようだ。)

掘出●市場->「超特急」=>森の小人サッチモ古木額

 Flashかな?キーワードがヒットすればイメージ広告も出るんだね。

2007年5月21日月曜日

なぜPEAR::Services_Flickrが無いのか?

 それはFlickr APIのPHPによる呼び出しがとても簡単だからかもしれない。file_get_contents()とunserialize()だけでFlickrのデータを取得できる。これは楽ちんだ。

 ちなみに公式PEARではないが、Flickr APIのページにはPHPのFlickr APIラッパーが3つ(PEAR::Flickr_API、phpFlickr、Phlickr)紹介されている。また、期待のZend_FrameworkにもZend_Service_Flickrなんてのがある。選り取りみどりだね。

 でも実は、PEAR公式ライブラリにもServices_Flickrがあった!いまだにStatusがProposedだけど...

2007年5月18日金曜日

書評:ソーシャル・ウェブ入門

 この手の本は生ぬるいことが多くていまいちしっくりこないので敬遠していたが、小飼弾氏の絶賛に釣られて読んだ。
 なるほど、たしかに面白い。でもこれは2000年以降のアメリカを中心とするWeb界隈の動きをある程度知っていないと楽しむどころか理解するのも難しいんじゃないかな。そういう意味では本当に入門編的である「ウェブ進化論」と比べるのは「ウェブ進化論」にとってかわいそうじゃないなかぁ。
 ただし読み終わってみれば毒にも薬にもならない気もする。本当に読み物として楽しんだなあという感じで。この本の中で何回か紹介されている「ザ・サーチ」を今さらながら読もうかなという気にさせられた。
 値段は微妙だけど、すごく高いとは思わない。この内容ならこのくらいの価値はあるでしょ。
 大きさはとても良い。大き過ぎず小さ過ぎず。大きいのとか分厚いのは通勤で持ち歩くのが苦痛だからね。








2007年5月13日日曜日

PHPの日付操作はDateTimeが簡単

 PHP 5.2以降の話。
 PHPで、日付を計算したい時がたまにある。ある日付の7日前の日付とか、システム日時の1ヵ月後の日付とか。たいていは日付関連の機能をまとめたclassを作っておいて、その中に日付計算機能を入れておく。でも、PHP5.2以降ならDateTimeオブジェクトを使えば簡単に日付の計算ができる。

 まずDateTimeオブジェクトを生成する。普通にnewするか、date_create()で生成できる。
 あとは、DateTime::modify()で日付の加減算をして、DateTime::date_format()で出力する。


$date = new DateTime("2006-12-12");
$date->modify("+1 day");
echo $date->format("Y-m-d");


 面白いのはmodify()で指定できる日付の形。普通は"+1 day"とか"+1 week"なんかを指定するけど、"last Monday"なんてのも指定できて便利。
 この書式については、PHPのstrtotime()GNU tar 1.15.1: Relative items in date stringsに詳しく書いてある。
 "2days ago"と複数形でも指定できるし、"tomorrow"なんてのもできて、ソースコードがここだけちょっと普通の文章っぽく出来るね。

関連記事:
 PHPの計算が融通が利く件について
 FeedCreator.class.phpを使いこなすポイント
 PHPでhttpステータス404を返す方法
 なぜPEAR::Services_Flickrが無いのか?
 PHPで簡単にRSS/Atomフィードを生成

2007年5月12日土曜日

PHP5.2.2のエラーログの余分な改行

 Windows版PHPの話。PHPを5.2.2にバージョンアップしたら、エラーログに余分な改行が出るようになった。ログとログの間に必ず1行空行ができる。調べてみると、改行コードが「CR CR LF」になっているようだ。Windowsの普通の改行コードは「CR LF」なので、「CR」が1つ余分に出ている。ちょっと嫌だなぁ。

2007年5月4日金曜日

リファラの綴りはrefererかreferrerか?

 Webページの遷移元情報である「リファラ」、アルファベットのスペルでいつも迷う。正しくは"referer"だけど、"refferer"とか"referrer"とかも正しそうな気がして...。これについて、用語「Referer」@鳩丸ぐろっさり (用語集)に面白い記述があった。

なお、「参照元」という意味での英単語としての正しい綴りは 'referrer' なのですが、HTTP のヘッダフィールドには伝統的に Referer という綴りが使われます。
 なるほど、"referrer"と間違えそうになるのは、頭のどこかで本来の正しいスペルを覚えていてそれに引っ張られるからなのかな?

ブログ アーカイブ

tags