1. 程式人生 > >幾個很有用的magento模板除錯技巧

幾個很有用的magento模板除錯技巧

echo get_class($this)
這個可以看到該phtml 檔案呼叫的類名,基本大部分是 block 型別的,這個方法可以應用於任何你不清楚的物件變數。

print_r($object->getData())
有時光知道物件名不過癮,很想知道這個物件類輸出的資料時啥。如果直接列印物件類,很多情況下你的遊覽器就掛掉了。只要是物件類,一定會有一個 getData() 的方法輸出實際傳遞的資料,而這個打印出來要比光列印物件類小50%-70%,所以一般不會卡,除非你多次迴圈列印,也是可以把遊覽器弄死的。

die()
在某些迴圈中,需要看到某個位置輸出的東西。又不想讓迴圈走完,直接用die()可以強制終止 (ajax 除錯無效)。結合其他一些列印來檢視 自己設定的斷點是否有效。

return $this->getResponse()->setBody(Mage::helper(‘core’)->jsonEncode($response));
既然提到 ajax 除錯,極力推薦火狐的firebug工具,可以在控制器中看到 ajax 的執行狀態,要在ajax 設斷點,就是要echo 一些資料,但是光在ajax 裡echo, 在 magento 中除錯無效。需要用以上這個命令在AJAX程式中,一般是在ACTION裡,把資料列印到body。 $response 可以是字串,也可以是陣列。當然還有其他一些方法,但是這個對新手來說最好理解。