symfonyのキャッシュマネージャーが取れないとき

symfonyで、キャッシュが効いているページを強制的にクリアしたいとき、

  $cacheManager = $this->getContext()->getViewCacheManager();
  $cacheManager->remove('quiz/index?id='.$quizIdToRemove);

とかやってたのですが、デバッグ環境でエラーが出てしまいました。

Fatal error: Call to a member function set() on a non-object in ...

実環境でエラーにならないのでうんうん悩んで調べてみたら、デバッグ環境ではcache: off にしてました。getViewCacheManager()はキャッシュ使ってなければnullを返すようです。

# 考えてみたら当たりまえか

問題は、これがfatal errorで止まっていたためにトランザクションが完了していなかったことです。

cacheManagerを取得したときは、必ずnullチェックして、キャッシュが使われてるときだけ呼び出しましょう。 > 自分

Delphi for PHP作者の来日記まとめ

先月の第40回PHP勉強会@関東は、スペインからDelphi for PHPの作者Jose Leonさんを迎えてのスペシャルだったわけですが、Joseさんの日本滞在の感想等が彼のブログで上がっていたのでご紹介しておきます。

Delphi for PHP » Developer Summit 2009 – Japan

デブサミ初日の感想。参加者の多さと熱心さに感心されているようです

Delphi for PHP » Developer Summit 2009 – Japan (II)

デブサミ二日目。彼自身のセッションがあったことの報告です。そのあと、各メディアとのインタビューに臨んだようです。

Delphi for PHP » PHP Camp

PHP勉強会とそれに続く泊まりでのハッカソンの感想。勉強会で発表されたOpenPear等にも言及されてます。

Delphi for PHP » Developer Camp 2009 and Open Source Conference at Japans Electronics College

オープンソースカンファレンス(OSC)の感想。写真が「日本」ですね。カメラ量販店の技術書棚も印象に残った様子。

Matzことまつもとゆきひろさんとのツーショット写真も。Delphi for Rubyの可能性について話したとか。

最後は、取材を受けて日本で記事になったページをそれぞれ紹介しています。

twitterのOAuthが一般利用可能に

申し込みページ

PHP用APIラッパーライブラリTwitter OAuth そのコード

twitterのパスワードを要求するマッシュアップはいっぱいありますが、OAuthに対応してくれればパスワードを個々のサービスに渡さなくても済むようになりますね。(僕はそういうサービスは使わないことにしてますが)

via twitter.com/twitterapi