thinkphp5 - thinkPHP 資料庫 M() 用的多嗎? - SegmentFault

來源:互聯網
上載者:User
關鍵字 thinkphp thinkphp5 php
學完了 thinkPHP C和V 最後看的 操作資料庫,
之前學的PHP內建的PDO,感覺也會用了,
現在thinkPHP 也自己帶了一套 操作資料庫的 類。
我看了看教程,再學習也挺繁瑣哦的。。
各種傳值格式又都得記,本來學了class MySQLi,後來知道都用pdo,又學了pdo,現在又一個M。。。我都快學串了。

我問問這個thinkPHP 的大M 方法,在你們做項目用的多嗎?
比pdo 的方便嗎?

我還學習嗎。。

回複內容:

學完了 thinkPHP C和V 最後看的 操作資料庫,
之前學的PHP內建的PDO,感覺也會用了,
現在thinkPHP 也自己帶了一套 操作資料庫的 類。
我看了看教程,再學習也挺繁瑣哦的。。
各種傳值格式又都得記,本來學了class MySQLi,後來知道都用pdo,又學了pdo,現在又一個M。。。我都快學串了。

我問問這個thinkPHP 的大M 方法,在你們做項目用的多嗎?
比pdo 的方便嗎?

我還學習嗎。。

  • 27 分鐘前提問
  • 評論
  • 邀請回答

請先 登入 後評論

預設排序 時間排序

5 個回答

答案對人有協助,有參考價值 0 答案沒協助,是錯誤的答案,答非所問

你看了文檔之後就會感覺用起來很方便啊,大哥,架構的意義在哪裡?!不就是讓你少寫代碼嗎!話說tp 3.2.3資料庫驅動用pdo重寫了(完全基於pdo的)

你既然要用Thinkphp架構了肯定首選使用M或者D方法啊!

  • 如果你要執行個體化模型類檔案,就用D

  • 如果不用載入模型類,就用M
    一般情況簡單的CURD都用M。根據實際情況來用。希望對你有協助

thinkphp裡面有兩種模型調用方式,M()和D(),比如操作使用者表:

M('user')->add(array('name' => 'zhangsan'));D('**U**ser')->add(array('name' => 'lisi'));

注意D('User')中user首字母大寫。兩者的區別是,D()可以由你自己撰寫擴充的模型操作,而M()是thinkPHP內建的方法,也就是說D()可實現功能擴充,而M()功能不可擴充,效能上D()也就比M()弱了一些。

你學PHP當然要對pdo和mysqli方法都有所瞭解,但是在具體的項目中,用thinkPHP封裝好的方法去操作就好了。

我用D比較多

幾乎每個項目中都會使用到資料庫,而在ThinkPHP此類架構中,一般是將一張表封裝成一個對象,而在php中,對象的執行個體化是需要new類的,代碼類似於

//類似於這種MysqlTableClass $obj_Table =new MysqlTableClass('db_name','table_name');obj_test=$obj_Table->getOne();

ThinkPHPM函數(這裡我不得不糾正下你的說法了,類中的才叫方法,這個M位於公用函數裡,所以只能叫函數),封裝的就是上面的new操作,返回的直接就是一個對象。

技巧拓展

建議不要使用M方法,因為當你後期需要添加自訂模型的時候,M方法還得一個個的改成D,非常麻煩,而如果你直接使用D方法,則可以避免此類問題。

綜上

直接使用D方法即可,本質上就是一個封裝而已~

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.