thinkphp實(shí)例教程 為什么國內(nèi)有不少PHP程序員不喜歡THINKPHP,甚至鄙視THINKPHP?
為什么國內(nèi)有不少PHP程序員不喜歡THINKPHP,甚至鄙視THINKPHP?ThinkPHP仍然是中國使用最廣泛的PHP框架。它有健全的中文文件,可供多個(gè)用戶在中國使用。許多問題可以在網(wǎng)上得到解答。
為什么國內(nèi)有不少PHP程序員不喜歡THINKPHP,甚至鄙視THINKPHP?
ThinkPHP仍然是中國使用最廣泛的PHP框架。它有健全的中文文件,可供多個(gè)用戶在中國使用。許多問題可以在網(wǎng)上得到解答。這是他的成功點(diǎn)。缺點(diǎn)是他的代碼管理能力不是很好。許多使用TP的人都偏離了它。最后,他們發(fā)現(xiàn)只有部分功能塊完全符合TP的規(guī)范,二次開發(fā)給人的感覺是非?;靵y,很難啟動(dòng)。當(dāng)然,新版本已經(jīng)改進(jìn)了。如果您添加一個(gè)名稱空間,您需要為偏差支付更多的費(fèi)用。當(dāng)然,你應(yīng)該遵循這個(gè)過程。
thinkphp的優(yōu)點(diǎn)和缺點(diǎn)?
作為最流行的web開發(fā)語言之一,PHP也衍生出許多優(yōu)秀的框架,如ThinkPHP、Yii、CI、laravel等,但從國內(nèi)來看,無論是PHPer需求還是各大招聘網(wǎng)站的口碑傳播,ThinkPHP框架都是應(yīng)用最廣泛的。
ThinkPHP框架通常稱為TP。它于2006年推出。它是一個(gè)開源的、簡(jiǎn)單的、輕量級(jí)的開發(fā)框架。它的許多設(shè)計(jì)思想都借鑒了Java的struts。
它極其簡(jiǎn)單,易于使用,特別適合中小型項(xiàng)目開發(fā);
,數(shù)據(jù)操作簡(jiǎn)單(ORM);
模板支持良好,易于擴(kuò)展。
代碼太武斷,編寫函數(shù)有n種方式,不利于代碼規(guī)范的統(tǒng)一;
,無法無縫升級(jí)。
thinkphp的缺點(diǎn)?
PHP框架對(duì)于項(xiàng)目來說非常重要,這會(huì)影響團(tuán)隊(duì)的開發(fā)效率以及后續(xù)的維護(hù)和開發(fā)成本,對(duì)于框架,每個(gè)人都有自己的偏好。同樣的框架,有人愛到極致,有人管它叫垃圾。所以清理一下你需要的東西。
1. 根據(jù)GitHub的數(shù)據(jù),laravel位居榜首,在國外擁有最多的用戶。Laravel具有代碼簡(jiǎn)潔優(yōu)雅的優(yōu)點(diǎn),但其缺點(diǎn)是依賴于其他擴(kuò)展,其內(nèi)部預(yù)先復(fù)雜。當(dāng)系統(tǒng)復(fù)雜時(shí),需要配置大量的路由規(guī)則,文檔少,版本更新快,不連續(xù)。
2. ThinkPHP是由中國人開發(fā)和維護(hù)的。其優(yōu)點(diǎn)是中文文獻(xiàn)完善,社區(qū)活躍。它的缺點(diǎn)是高頻單字母函數(shù)讓人困惑,代碼不優(yōu)雅。適合中國人快速開發(fā)一些web系統(tǒng)。我覺得缺少orm。
3. Phalcon是一個(gè)用C編寫的PHP框架,它以PHP擴(kuò)展的形式加載。它的優(yōu)點(diǎn)是其性能絕對(duì)是第一,是其他框架的十倍。但其缺點(diǎn)是學(xué)習(xí)成本高。一旦發(fā)現(xiàn)框架bug,對(duì)于不懂C和PHP擴(kuò)展的學(xué)生來說,它幾乎是一條死胡同。
4. Yii是中國開發(fā)商,所以溝通比較順暢。它的優(yōu)點(diǎn)是強(qiáng)大的組件、豐富的類庫、成熟的模型、方便的GII、各種各樣的小部件、對(duì)ORM的支持、對(duì)多語言國際化的支持以及干凈的代碼。缺點(diǎn)是容易上手,難掌握,所以需要了解它的設(shè)計(jì)思想。
多角度比較
性能:Falcon>;Yii≈laravel,因?yàn)镕alcon是用C語言開發(fā)的,是用PHP擴(kuò)展加載的,所以不需要額外的框架解析和執(zhí)行,所以性能很好
代碼可讀性:laravel更好(表現(xiàn)力更強(qiáng),即使不懂PHP也能基本了解自己在做什么)
開發(fā)速度:Yii≥laravel>總結(jié)起來,總體上Yii比較突出,適合中大型項(xiàng)目;ThinkPHP適合快速開發(fā)和中小型項(xiàng)目;Phalcon適用于高性能要求的項(xiàng)目;laravel適用于最追求簡(jiǎn)潔代碼的學(xué)生。每個(gè)人都得到他們需要的。
做項(xiàng)目必須要用thinkphp嗎,用原生的php不行嗎?
首先,您可以在項(xiàng)目中使用或不使用ThinkPHP,因?yàn)門hinkPHP只是許多框架中的一個(gè),可以使用許多其他框架,如CodeIgniter、Falcon、Yii、laravel等。
至于是否采用原生框架,只要有一定規(guī)模的項(xiàng)目,就采用框架。一方面,框架開發(fā)效率高;另一方面,框架具有安全性和可擴(kuò)展性。
最后,是否采用框架以及采用什么框架在很大程度上取決于技術(shù)總監(jiān),技術(shù)總監(jiān)會(huì)根據(jù)團(tuán)隊(duì)的實(shí)際情況做出合理的決策。沒有什么是絕對(duì)的。只要有利于項(xiàng)目的開發(fā)、維護(hù)和進(jìn)度,我們就可以采用。
如果我們使用框架,我們建議使用laravel。與Java中的spring一樣,laravel擁有控制反轉(zhuǎn)等高級(jí)設(shè)計(jì)模式、優(yōu)雅的代碼和強(qiáng)大的可維護(hù)性。
php框架學(xué)哪個(gè)好?thinkphp、Laravel 5?
如果您剛剛開始接觸PHP,可以從ThinkPHP開始。國內(nèi)的框架和手冊(cè)都是中文的,所以開始比較容易。有了一定的基礎(chǔ),學(xué)習(xí)起來就容易多了。