自訂的方法名稱可以和PDO自帶方法名稱相同嗎?
谭勇
谭勇 2017-10-12 19:26:04
0
1
1204

自訂的方法名稱可以和PDO已經存在的方法名稱相同嗎?例如影片裡面不是自訂了feach()方法嗎,然而feach是PDO裡面的預設方法啊

谭勇
谭勇

全部回覆(1)
寻觅 beyond

不知道那個影片是咋講的,我就照我理解的說吧

自訂的方法名稱可以和PDO自帶的方法名稱相同,首先你搞清楚作用域,如果你自己寫的資料庫類別沒有繼承PDO類別的話,他們兩個類別裡面的成員屬性和成員函數即使一模一樣,那也是半點關係沒有,呼叫的時候兩個類別的物件實例會分別呼叫自己類別中的函數。

如果自訂的類別繼承PDO類,然後宣告與PDO類別同名的方法就屬於重寫了,注意fetch是PDOStatement物件的方法,所以即使繼承得失PDO類,如果自訂了fetch,那麼使用的是自己定義fetch方法,而不是PDOStatement對象的fetch;

還有一種情況是在自訂的類別中new了一個PDO對象,包括上面一種情況,就有一個問題,PDO執行query或execute()之後,回傳的是PDOStatement的物件實例,如果在用這個傳回的實例執行fetch方法,那就是執行的PDOStatement的fetch。

所以,我也不知道用文字咋說,你實際操作一下就知道了

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!