php框架yii學習使用(yii框架的優點及原理)

  • 1、YII 框架的優點有哪些
  • 2、php開發框架怎麼使用,剛接觸框架
  • 3、yii框架如何訪問api
  • 4、PHP中使用YII框架的問題
  • 5、為什麼學PHP需要框架?PHP框架是做什麼用的?
  • 6、昆明北大青鳥分享PHP工程師需要學習哪些內容

Yii容易學習和使用。只需要知道PHP和面向對象編程,便可以很快上手,而不必事先去學習一種新的架構或者模板語言。

用Yii的開發速度非常之快,除框架本身之外,需要為應用所寫的編碼極少。造就了Yii是最高效的開發框架之一。

Yii 具有高度的可重用性和可擴展性,是純粹的面向對象。Yii中的一切都是獨立的可被配置,可重用,可擴展的組件。更重要的是Yii有著越來越多的擴展庫。主要由使用者貢獻出的組件組成,這可能有助於大大減少開發時間。

Yii 有著豐富的功能,從MVC, DAO/ActiveRecord, 到主題化, 國際化和本地化, Yii 提供了幾乎所有今天的Web 2.0應用程序開發所需的功能。

Yii參考手冊是Yii完備的文檔,有著學習和掌握它所需要的任何資料和信息。

Yii一開始就精心設計,以適應複雜的Web應用開發。它不是某個項目的副產品或者第三方集成。而是融合了作者豐富的Web應用開發經驗和其它熱門 Web 框架和應用的優秀思想的結晶。

最後,重要的一點:Yii是免費的,Yii遵循最新的BSD許可。它確保了它的第三方開發也循序和BSD相兼容的許可。這意味著無論從法律上還是財務上來說,都可以自由的使用Yii來開發任何一個開源的或者私有的應用。

它非常令人印象深刻的是,性能指標相比其他基於PHP的框架有明顯效率,立即吸引了非常積極的關注並受到許多開發者的歡迎。

先下載一個框架的源碼,研究一下,把MVC處理流程看一遍就會了,常用php框架有zendfraework,thinkphp等等,注意每個框架都是有差別的,選一個學習就可以了

最流行PHP框架排名

1. Yii

Yii是一個基於組件的高性能的PHP的框架,用於開發大規模Web應用。Yii採用嚴格的OOP編寫,並有著完善的庫引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務,到主體化,I18N和L10N,Yii提供了今日Web 2.0應用開發所需要的幾乎一切功能。而且這個框架的價格也並不太高。事實上,Yii是最有效率的PHP框架之一。

2. CodeIgniter

CodeIgniter是一個應用開發框架——一個為建立PHP網站的人們所設計的工具包。其目標在於快速的開發項目:它提供了豐富的庫組以完成常見的任務,以及簡單的界面,富有條理性的架構來訪問這些庫。使用CodeIgniter開發可以往項目中注入更多的創造力,因為它節省了大量編碼的時間

3. CakePHP

CakePHP是一個快速開發PHP的框架,其中使用了一些常見的設計模式如ActiveRecord,Association Data Mapping,Front Controller以及MVC。其主要目標在於提供一個令任意水平的PHP開發人員都能夠快速開發web應用的框架,而且這個快速的實現並沒有犧牲項目的彈性。

4.ymfony

Symfony是一個用於開發PHP5項目的web應用框架。

這個框架的目的在於加速web應用的開發以及維護,減少重複的編碼工作。

Symfony的系統需求不高,可以被輕易的安裝在任意設置上:你只需一個Unix或Windows,搭配一個安裝了PHP5的網路伺服器即可。它與差不多所有的資料庫兼容。Symfony的價位不高,相比主機上的花銷要低得多。

對於PHP開發者而言,使用Symfony是一件很自然的事,其學習曲線只有短短一天。乾淨的設計以及代碼可讀性將縮短開發時間。開發者可以將敏捷開發的原理(如DRY,KISS或XP等)應用在其中,將重點放在應用邏輯層面上,而不用花費大量時間在編寫沒完沒了的XML配置文件上。

Symfony旨在建立企業級的完善應用程序。也就是說,你擁有整個設置的控制權:從路徑結構到外部庫,幾乎一切都可以自定義。為了符合企業的開發條例,Symfony還綁定了一些額外的工具,以便於項目的測試,調試以及歸檔。

1. Yii

Yii是一個基於組件的高性能的PHP的框架,用於開發大規模Web應用。Yii採用嚴格的OOP編寫,並有著完善的庫引用以及全面的教程。從MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務,到主體化,I18N和L10N,Yii提供了今日Web 2.0應用開發所需要的幾乎一切功能。而且這個框架的價格也並不太高。事實上,Yii是最有效率的PHP框架之一。

2. CodeIgniter

CodeIgniter是一個應用開發框架——一個為建立PHP網站的人們所設計的工具包。其目標在於快速的開發項目:它提供了豐富的庫組以完成常見的任務,以及簡單的界面,富有條理性的架構來訪問這些庫。使用CodeIgniter開發可以往項目中注入更多的創造力,因為它節省了大量編碼的時間。

3. CakePHP

CakePHP是一個快速開發PHP的框架,其中使用了一些常見的設計模式如ActiveRecord,Association Data Mapping,Front Controller以及MVC。其主要目標在於提供一個令任意水平的PHP開發人員都能夠快速開發web應用的框架,而且這個快速的實現並沒有犧牲項目的彈性。

4. PHPDevShell

PHPDevShell是一個開源(GNU/LGPL)的快速應用開發框架,用於開發不含Javascript的純PHP。它有一個完整的GUI管理員後台界面。其主要目標在於開發插件一類的基於管理的應用,其中速度、安全、穩定性及彈性是最優先考慮的重點。其設計形成了一個簡單的學習曲線,PHP開發者無需學習複雜的新術語。PHPDevShell的到來滿足了開發者們對於一個輕量級但是功能完善,可以無限制的進行配置的GUI的需求。

5. Akelos

Akelos PHP框架是一個基於MVC設計模式的web應用開發平台。基於良好的使用習慣,使用它可以完成如下任務:

◆方便的使用Ajax編寫views

◆通過控制器管理請求(request)及響應(response)

◆管理國際化的應用

◆使用簡單的協議與模型及資料庫通信

你的Akelos應用可以在大多數共享主機服務供應方上運行,因為Akelos對伺服器唯一的要求就是支持PHP。因此,Akelos PHP框架是理想的用於發布單獨web應用的框架,因為它不需要非標準PHP配置便能運行。

6. Symfony

Symfony是一個用於開發PHP5項目的web應用框架。

這個框架的目的在於加速web應用的開發以及維護,減少重複的編碼工作。

Symfony的系統需求不高,可以被輕易的安裝在任意設置上:你只需一個Unix或Windows,搭配一個安裝了PHP5的網路伺服器即可。它與差不多所有的資料庫兼容。Symfony的價位不高,相比主機上的花銷要低得多。

對於PHP開發者而言,使用Symfony是一件很自然的事,其學習曲線只有短短一天。乾淨的設計以及代碼可讀性將縮短開發時間。開發者可以將敏捷開發的原理(如DRY,KISS或XP等)應用在其中,將重點放在應用邏輯層面上,而不用花費大量時間在編寫沒完沒了的XML配置文件上。

Symfony旨在建立企業級的完善應用程序。也就是說,你擁有整個設置的控制權:從路徑結構到外部庫,幾乎一切都可以自定義。為了符合企業的開發條例,Symfony還綁定了一些額外的工具,以便於項目的測試,調試以及歸檔。

7. Prado

PRADO團隊由一些PRADO狂熱者組成,這些成員開發並推動PRADO框架以及相關項目的進行。

PRADO的靈感起源於Apache Tapestry。從04年開始,PRADO成為SourceForge上的開源項目之一。這個項目目前進展到了3.x版本。

8. Zend

作為PHP藝術及精神的延伸,Zend框架的基礎在於簡單,面向對象的最佳方法,方便企業的許可協議,以及經過反覆測試的快速代碼庫。Zend框架旨在建造更安全,更可靠的Web 2.0應用及web服務,並不斷從前沿廠商(如Google,Amazon,Yahoo,Flickr,StrikeIron和ProgrammableWeb等)的API那裡吸收精華。

9. ZooP

Zoop PHP框架,意為Zoop面向對象的PHP框架。

這是個穩定,可伸縮並可移植的框架。從誕生到現在的5年間,已經在不少產品開發中被使用。Zoop是一個快速,有效並乾淨的框架。它的伸縮性很好,你可以只安裝你需要的功能。

對代碼並不很熟悉的開發者也可以通過Zoop快速的開發安全的web應用。熟練的開發者則可以更加將Zoop的彈性利用到極致。

Zoop建議將display,logic以及數據層(MVC)分開使用。

Zoop由很多組件和項目集合而成,其中包括smarty和prototype AJAX框架,PEAR模塊等。高效的核心組件提供了很多你原本需要自己編碼來實現的功能。Zoop內置的糾錯功能可以通過配置實現生產環境下的錯誤日誌生成,這個錯誤日誌提供了很多信息,可讀性很高,可以更輕易的尋找並排除錯誤。

Zoop的一個特別之處在於其GuiControls,在PHP中是一個相當革新的想法。它提供了很多form widgets與驗證完整的集合到一起,並形成了一個可以輕鬆打造個性化GuiControls的框架。

10. QPHP

QPHP,意為快速PHP,它是一個與ASP.NET類似的MVC框架。基本上它是這樣一個情況:

◆整合了Java和C#的美感

◆除去了在其他PHP框架中使用的Perl形式的意義含糊的語言

◆大量基於OOP的概念

因為你Users Model的對應的表明沒改,在這個Users模型類里,有這樣的方法:

public static function tableName()

{

return ‘{{%users1}}’; // users1是你的新表名

}

而且直接執行Sql查詢,好像不是這樣用的吧?

我一般都是這樣的

Yii::$app-getDb()-createCommand($sql)-queryAll()

Yii::$app-getDb()-createCommand($sql)-queryOne()

Yii::$app-getDb()-createCommand($sql)-excute()

….

區別你可以看看源代碼的說明。(Yii2上的用法,yii1.x應該差不多,你稍微改改就應該沒問題)

1.對於PHP初學者從框架開始學習是個很好的方法。

很多功能與其東拼西湊找開源庫不如直接用現成的框架來解決,而且用框架還能保證可靠性和安全性,畢竟那是經過長時間應用檢驗的。

而且,用框架的更重要的原因是保證設計的合理性和可擴展性。如果不用框架難免會有結構設計方面的bug,做出來的產品難以維護,更難以擴展。

如果要從頭開始寫個項目,最簡單快捷的方法就是用框架,而且框架選擇也是很多樣的,可以用Zend這樣的大型框架,也可以選擇一些codeigniter這樣的開源輕量框架(CodeIgniter / EllisLab)。

2.對於PHP熟練者不一定非得用框架,很多優秀的PHP產品都沒有用框架。

框架的好處是規範代碼,統一架構,方便團隊開發和維護管理,代碼封裝了很多常用功能,開發的時候直接使用,並且不用考慮底層架構,提升開發效率。

所以框架適合開發大多數普通項目。項目太小,沒必要用框架。項目太大,需按具體業務設計架構,框架不一定好用。

3.所以,要根據自身情況而定,不一定非要使用框架。

怎麼樣才算是一名合格的PHP程序員?答案是能夠完成基本的LNMP系統安裝,簡單配置維護;能夠做基本的簡單系統的PHP開發;能夠在PHP中型系統中支持某個PHP功能模塊的開發。完成這些內容的時間因人而異,有的成長快半年一年就過了,成長慢的兩三年也有。

一名合格的PHP程序員需要學習的內容有哪些?下面來看看昆明北大青鳥培訓老師的看法。

1.PHP:

基本語法數組、字元串、資料庫、XML、Socket、GD/ImageMgk圖片處理等等;熟悉各種跟MySQL操作鏈接的api(mysql/mysqli/PDO),知道各種編碼問題的解決;知道常規熟練使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等);了解基本MVC的運行機制和為什麼這麼做,稍微知道不同的PHP框架之間的區別;能夠快速學習一個MVC框架。能夠知道開發工程中的文件目錄組織,有基本的良好的代碼結構和風格,能夠完成小系統的開發和中型系統中某個模塊的開發工作。

2.Nginx:

做到能夠安裝配置nginx+php,知道基本的nginx核心配置選項,知道server/fastcgi_pass/access_log等基礎配置,目標是能夠讓nginx+php_fpm順利工作。

3.MySQL:

會自己搭建mysql,知道基本的mysql配置選項;知道innodb和myisam的區別,知道針對InnoDB和MyISAM兩個引擎的不同配置選項;知道基本的兩個引擎的差異和選擇上面的區別;能夠純手工編譯搭建一個MySQL資料庫並且配置好編碼等正常穩定運行;核心主旨是能夠搭建一個可運行的MySQL資料庫。

4.Linux:

基本命令、操作、啟動、基本服務配置(包括rpm安裝文件,各種服務配置等);會寫簡單的shell腳本和awk/sed腳本命令等。

5.前端:

如果條件時間允許,可以適當學習下HTML/CSS/JS等相關知識,知道什麼web標準,div+css的web/wap頁面模式,知道HTML5和HTML4的區別;了解一些基本的前端只是和JS框架(jQuery之類的);了解一些基本的JavaScript編程知識;(本項不是必須項,如果有時間,稍微了解一下是可以的,不過不建議作為重點,除非個人有強烈興趣)

6.系統設計:

能夠完成小型系統的基本設計,包括簡單的資料庫設計,能夠完成基本的:瀏覽器-Nginx+PHP-資料庫架構的設計開發工作;能夠支撐每天幾十萬到數百萬流量網站的開發維護工作。

原創文章,作者:BE8Z6,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126176.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
BE8Z6的頭像BE8Z6
上一篇 2024-10-03 23:07
下一篇 2024-10-03 23:07

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Ojlat:一款快速開發Web應用程序的框架

    Ojlat是一款用於快速開發Web應用程序的框架。它的主要特點是高效、易用、可擴展且功能齊全。通過Ojlat,開發人員可以輕鬆地構建出高質量的Web應用程序。本文將從多個方面對Oj…

    編程 2025-04-29
  • Zlios——一個多功能的開發框架

    你是否在開發過程中常常遇到同樣的問題,需要不斷去尋找解決方案?你是否想要一個多功能、易於使用的開發框架來解決這些問題?那麼,Zlios就是你需要的框架。 一、簡介 Zlios是一個…

    編程 2025-04-29
  • agavi開發框架

    Agavi是一個基於MVC模式的Web應用程序開發框架,以REST和面向資源的設計為核心思想。本文章將從Agavi的概念、優點、使用方法和實例等方面進行詳細介紹。 一、概念 Aga…

    編程 2025-04-29
  • Harris角點檢測演算法原理與實現

    本文將從多個方面對Harris角點檢測演算法進行詳細的闡述,包括演算法原理、實現步驟、代碼實現等。 一、Harris角點檢測演算法原理 Harris角點檢測演算法是一種經典的計算機視覺演算法…

    編程 2025-04-29
  • Python unittest框架用法介紹

    Python unittest框架是Python自帶的一種測試框架,可以用來編寫並運行測試用例。在本文中,我們將從以下幾個方面詳細介紹Python unittest框架的使用方法和…

    編程 2025-04-29
  • com.alipay.sofa.bolt框架

    com.alipay.sofa.bolt框架是一款高性能、輕量級、可擴展的RPC框架。其廣泛被應用於阿里集團內部服務以及阿里雲上的服務。該框架通過NIO支持高並發,同時還內置了多種…

    編程 2025-04-29
  • 瘦臉演算法 Python 原理與實現

    本文將從多個方面詳細闡述瘦臉演算法 Python 實現的原理和方法,包括該演算法的意義、流程、代碼實現、優化等內容。 一、演算法意義 隨著科技的發展,瘦臉演算法已經成為了人們修圖中不可缺少…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 神經網路BP演算法原理

    本文將從多個方面對神經網路BP演算法原理進行詳細闡述,並給出完整的代碼示例。 一、BP演算法簡介 BP演算法是一種常用的神經網路訓練演算法,其全稱為反向傳播演算法。BP演算法的基本思想是通過正…

    編程 2025-04-29

發表回復

登錄後才能評論