在我看來(使用Zend_View的,因此認爲是一個對象),我打電話給對象的屬性和方法來填充像這樣的模板:如何強制在PHP的對象的屬性或方法的方法調用?
<?= $this->user->name ?> // Outputs John Doe
<br/>
<?= $this->user->getCompany()->name ?> // Outputs Acme
<br/>
<?= $this->method() ?> // Outputs foobar
如果我讓這個所有財產的請求(如''用戶')通過__get()有什麼辦法可以捕獲後續調用,以便我可以強制對最終輸出值進行方法調用?例如,以便我可以自動轉義輸出。
正如我現在看到的那樣,我要麼在進入數據庫時使用輸入,要麼使用像Smarty這樣的編譯模板,或者切換到將每個變量分配給View對象,以便直接控制以強制在輸出數據之前轉義。
我聽說,在ZF 2.0所有返回Zend_View的實例值(使用Zend_View :: __ get()返回)將被自動轉義。 – 2010-01-07 06:35:36
2問題:由於PHP 5.3的要求,2.0還沒有出現,暫時不會有一段時間。它只會自動轉義直接分配給它的值,而不是從對象中獲取的值。 – 2010-01-07 16:21:37