2012-11-18から1日間の記事一覧

Smarty側に特に手を入れずにQuercus上で動かしたった

前回話しに上げた変更の property_existsの内部でissetFieldを使わせない getFieldでnullの時に次の候補(staticとか__get)とかに行かせずにnullを返す と言うものでまず最初の爆死がなくなり、次はnullオブジェクトに対してisTrustedTagを呼ぼうとして死、と…

Quercus上でのproperty_existsと__get

ソースを追ってみたところ、property_existsの方はClassesModuleと言うクラスにあり、内部的にはissetFieldと言う関数を参照していた。 名前から察する通りisset系なのでnullの場合はfalseになるようになっていた。 修正するとしたらissetFieldではなくhasFi…

SmartyがQuercusで動かない

しょっぱなから躓いた。ここにある理由の通り。 https://gist.github.com/4086394 property_existsはnullでもプロパティーが存在していればtrueなのにQuercusはそうなっていない。 Smartは__getや__callを結構駆使してるのでしょっぱなでコケる。 しょうがな…

Quercus調査はじめる

半分趣味的な部分もあり、Quercusでどのくらい近くにあるPHPがそのまま動くか、動かないかを調べ始めようと思う。 目的は既存PHPシステムの脱PHP。 ほぼそのまま動くのであれば既存システムが動く状態を維持しながら別のJVM上で動く言語に少しずつ切り替えて…