我是一位嘗試瞭解此PHP行爲的Java開發人員。我已經執行了下面的方法:PHP - 對象的方法
error_log(get_class($a) . "\n", 3, "c:\my-errors.log");
error_log(print_r(get_class_methods($a), true) . "\n", 3, "c:\my-errors.log");
其中印刷
Mage_Catalog_Model_Product
Array
(
[0] => getStoreId
...
[90] => getWeight
[91] => getOptionInstance
[92] => getProductOptionsCollection
[93] => addOption
[94] => getOptionById
[95] => getOptions
[96] => getIsVirtual
...
[182] => flagDirty
)
但是第二天線執行(沒有錯誤)這顯然不是在我打印的第一方法中的列表的方法:
$a->getOption()
那麼,它怎麼可能?我怎樣才能知道對象所有的方法?是否有任何方法知道哪個文件將執行「下一行代碼」 - 因爲項目中有幾個「getOption」函數,我無法確定哪個文件將被執行。
也許這可以幫助你,我與Magento的1.7工作,我說的代碼是在
\app\code\core\Mage\Bundle\Model\Product\[email protected]
非常感謝!