PHPTALメーリングリストダイジェスト
すでに今年の2月の事ですが、本サイトのPHPManualは本家サイトへ寄贈いたしました。
内容は同様の物になっておりますので、お好きな方へリンクをお願いします。
PHPTAL MLの最近の話題
- $のエスケープについて
Chameron Junge氏より、$後にインライン形式(${value})で出力したい場合どうしたらいいのか? という質問。
$${value}とするとそのまま”$${value}”と表示されてしまいます。 バグじゃね?
実態参照の$を使えば? って意見もありましたが、XMLの仕様として$も$と同等に扱うとのこと。
(つまり ${value} って書くと value に展開される)
良い方法ないかね?
これに対してKornelより、今の仕様は
${value} は valueになるけど
$${value} は ${value} に
$$${value} は $${value} になっちゃうとのこと。
これはバグじゃなくてそういう仕様なんだよ。 と。
でも以下のように変えることもできるよ。 ただ、$の偶数奇数をきちんと判別して置換するシンプルな方法がないかな?と質問forAll
${value} は value に
$${value} は ${value} に
$$${value} は $value に
数名からは「仕様は変えなくてイイよ」的意見もありましたが、本家(python)TALの仕様が$$は$リテラルに置換という仕様という指摘があり、本家に合わせて修正されることになりました。
実装方法については、Tjerk Meestersより $$は$に置換した上で、preg_replace() 使って「\b${?(\w+)」でいいでしょうという意見があり、それが採用されることになりました。
- バージョン1.2.1(現時点の最新版)で「namespace not decrared」というエラーが出る
宣言していない名前空間(メールでは _tal:content )を使うと例外でるんだけど。
できれば無視してくれないかなー という要望
Kornelより、
それはXMLの仕様だから、xmlnsで適当に宣言すれば出なくなるよ。とのお返事