php高級技巧
❶ 高級php工程師應該具備哪些技能
可是呢? 一個成功PHP高級開發工程師,不僅需要精通PHP開發,資料庫設計建模,伺服器架構,還需要熟悉各種系統結構,如文章系統、圖片系統、人力資源管理系統、樓市系統、電子商務系統、廣告公告系統、流量統計系統、企業自動建站系統、留言問答系統、BBS、博客等,最重要的工程要有一定的項目實戰經驗。 1、熟練使用PHP+MYsql編程,熟悉HTML , Div, CSS, JavaScript, Smarty模板技術;常用設計模式必須掌握,設計模式是前輩的總結、經驗; 2、、熟悉主流PHP框架,熟悉網站開發的流程; 3、有良好的編程習慣,良好的溝通能力,具有較強的分析、解決問題能力;能自主完成模塊開發; 4、html/css必須會,不要求你會切會div+css,但是至少要知道,因為php是一種嵌入html中使用的語言; 5、熟悉linux 開發環境;linux不需要會,會的話肯定更好,一般公司都有專門伺服器管理人員的。
❷ php高級技術有哪些
php基礎要會,基本語法,面向對象,資料庫設計
對mvc框架熟悉例如 thinkphp,yii,Ci等
拿thinkphp為例。假如你對thinkphp框架很熟悉了,並且能熟練應用了,然後仿照thinkphp框架 自己寫一個mvc框架
沒有必要寫的像thinkphp功能那麼全,只要把核心功能寫出來了就行了
這個時候你會發現你的php水平會有很大的提高,差不多就達到了高級程序員了
❸ PHP程序員需要具備哪些技能
1、語法:必須比較熟悉,在寫代碼的時候IDE的編輯器對某一行報錯應該能夠根據報錯信息知道是什麼樣的語法錯誤並且知道任何修正。
2、命令:必須熟悉PHP帶的一些常用命令及其常用選項,熟悉那些命令,自己運行php.exe -h 如果這些命令你沒有全部使用過,那麼你對PHP實際上還很不了解。
3、工具:必須至少熟練使用一種IDE的開發工具,例如:Eclipse、Netbeans、zend或者editplus,ultraedit,包括進行工程管理、常用選項的設置、PHP插件的安裝配置以及進行調試。
4、API:PHP的核心API是非常龐大的,但是有一些內容筆者認為是必須熟悉的,否則不可能熟練的運用PHP。
5、測試:必須熟悉使用phpunit編寫測試用例完成代碼的自動測試。
6、管理:必須熟悉使用xinc, phing等完成工程管理的常用任務,例如工程編譯、生成phpdoc、生成、版本控制、自動測試。
❹ 有哪些 PHP 調試技巧
1、最簡單經典的var_mp()或者echo +exit()
2、配置error_log,能夠解決很多疑難雜症
3、debug方式是:xdebug
4、firebug + firephp或者chrome + chromephp
❺ 如何最快速的學習PHP
作為一個PHP程序員來說,並不是告別了大學校園你的學習生涯就此結束,而是剛剛開始!!你絕對想不到你將要面對的知識海洋是浩瀚無邊的,你學習的速度永遠趕不上它更新的速度。甚至你都還沒有掌握透某個技術,新的技術又已經迭代進來。而最重要的是,你不得不強迫自己,在更新迭代的浪潮中脫穎而出,適應工作提升自己。那麼,我們又應該怎麼按自身的情況提升自己呢?我將從實習、初級、中級三個階段進行講解。
一、實習階段的PHP程序員提升方法
剛出大學出來的程序員,學習能力是最強的,這時候最有朝氣和想法。但是初入職場都會感覺一切很新穎,隨著上班久了就會有倦態感,慢慢的就會出現那種朝氣沒有了,上班一天回到家只想躺在床上玩手機。久而久之,非常不利於自己的成長。一旦養成這種習慣,後期想再重新拾起是一件很困難的事情。那麼作為一個過來人,我建議你可以這樣做:
1、初入職場,多學多看多記
剛進入職場的PHP程序員一定會很愛吐槽,我拿這么少的工資做那麼多的工作。如果你在抱怨,那對你提升是有很大的影響。你可以混這份工作混完3個月,你也可以3個月時間把你自己糊弄過去。
作為一個剛進入到企業中的實習生,錢真的不是最重要的,能力的提升才是無限增值的。你不會希望實習完就完了吧?然後再畢業找一份更好的?那麼你的職場經歷憑什麼靠這3個月的實習來讓我給你超過實習時候的工資?很多時候你的工作經歷,企業是不看重實習期工作經歷的。為什麼?因為實習期就是一個給初入職場的大學生適應學習編程的階段而已,並不會安排很重要的工作給你。所以你實習期間的工作經歷,在別的公司裡面普遍認為沒有價值,記住是沒有價值!!為什麼這么說?因為那個期間企業在花錢給你進來學習(適應職場),接觸的東西都不會是最重要的模塊(我想你也應該有體會,熟悉系統,修改bug,開發小功能)。而你畢業之後重新進一個企業工作時,你就會發現你做的東西更重要(涉及伺服器維護、介面開發、資料庫設計)更加的深入。
初入職場的實習生是最寶貴的,別以為企業花錢是讓你打雜的。如果你真認為自己進來就是打雜的,那你的心態不正做事也不正就更別想說從中學點什麼了。
做的事情簡單,但是請你一定要去思考怎麼把它做的更好,其他相關的模塊是如何和你做的掛鉤的(思維發散)?你做的這個模塊會影響哪些功能(全局觀)?我的建議就是從點到面,做完了就積極的跟導師(組長)要任務,你做的越多你的能力提升的越快。個人建議,剛出來時不要貪快,要的是好!即使慢都不要緊。
這時候,最重要的是養成一個習慣:思考!!思考我從這里學到了什麼,這些東西對我有什麼幫助。如果我下次在遇到這個問題怎麼樣可以快速解決?在後面的工作中你一定會發現效率怎麼一下子就上來了。
首先,一定要多學,看周圍同事或導師,他們的代碼怎麼編寫的。
其次,一定要多看,多去看周圍同事是如何為人處世工作的(態度),這些對你後面處理工作人際關系很有幫助(職場晉升這塊)。
最後,一定要多記,沒人什麼東西都記得全!!多記,忘記了還可以回過頭來翻看看,回憶一番,對你幫助絕對大!!
2、工作中多總結
我的建議就是,每周工作都要寫周報!!如果可以最好每天都寫日報。這一塊東西千萬別小看,你從這些日報和周報中發現自己的成長。其次記錄了你的處理問題,當你再回過頭去看的時候,你會發現原來自己做了這么多事情,後面對你寫簡歷,跟面試官交流這些東西的時候,面試官都會覺得你心細,是個不錯的培養對象。
3、閑暇時間多看技術博文、相關技術發展方向
提升最快的辦法就是站在別人的肩膀上看遠方!並不用你花很大塊的時間研究這些,你只需要自己業余時間(等車、車上)刷下手機看看這類博文,然後收藏(收藏並不等於就沒用了,而是為了當你工作中遇到這些問題時可以快速找到這些文章幫助你)。業余時間的積累是你提升最快的,並不需要你花什麼大的心思,還是一個很不錯的習慣。在瀏覽博文過程中,建議多評論(和作者交流做朋友),互相交流思想會讓你的編程思維上一個水平。
4、定目標,找准方向提升
編程的世界發展很快,初入職場的PHP程序員請一定要找准方向。往一個方向精通下去。因為學的東西實在太多。千萬不要這學一點(例如PHP開發),那學一點(前端開發),對你應付深入的PHP開發問題時你一定會崩潰!!你好像什麼都懂,但是不深入勝任不了難的工作,其次你的效率也不高,在試用期企業就能看出你的水平,這時候你也會感覺很艱難。
所以想好自己往哪個方向走,就專精那塊。有經歷再發散分支一起學。
❻ php高級工程師 具備什麼技能
高級php工程師可以往幾個方向去發展:
1.深度方向
一個工程師要往高階發展,必須同時強化幾個技術能力:
設計能力:懂得如何利用分層、面向對象、設計模式等設計組織代碼
編碼能力:熟悉php語法特性,知道怎麼用一兩行代碼代替初級開發者十幾上百行代碼。
工程能力:學會如何快速構建工程,學會如何構建可讀、可擴展性的工程,學會如何避免埋坑給後人,學會如何與人協作維護工程,學會如何保證工程質量,學會如何權衡利弊,學會如何在困難面前妥協。
抽象能力:初級開發者通常會等到邏輯重復時再抽象封裝(甚至怕拖進度或者懶惰而放棄),而高級開發者通常一開始寫出的邏輯就為了以後的重用,並且深知一開始多付出的思考設計時間最終都會因為復用得到回報。很多開發框架就是一步步抽象/埋坑/優化而來的。
架構能力:一個業務系統如何劃分模塊,模塊之間如何協作通信,每個模塊的技術選型如何做,系統細節如何規避問題等等。
優化能力:學會如何評估、分析、提升系統性能。優化途徑很多,產品功能優化、業務邏輯優化、基礎技術優化、操作系統底層硬體的優化等等。
2.廣度方向
php開發基本上離不開操作系統、存儲、緩存、網路、webserver等等配套設施,因此這也是高階必備技能。一旦業務系統出問題了,必須要能快速定位解決(不一定自己解決,但要知道找到哪個負責人來解決)。
比如存儲mysql,高級開發者會懂得利用索引、利用分表分庫提高查詢性能,懂得負載均衡和災備提高性能提高可靠性(雖然是DBA的工作,但了解了有助於出問題時排查)
比如緩存,高級開發者懂得如何有效且最大限度利用緩存系統提高應用性能。
比如http,初級開發者往往只懂得http網路請求就只一去一回兩個包,高級開發者會去深究網路七層模型、會深究http請求的各個環節(DNS、三次握手等等)
比如web前端,學習如何依靠瀏覽器緩存、CDN緩存、壓縮代碼、合並文件等等提高前端性能,學習如何進行前端安全攻防。
3,軟素質
懂得團隊管理,項目管理,溝通技巧等等。
❼ PHP 有什麼奇技淫巧
1,快捷鍵巨多,而且還可以自定義。跟sublime 有一拼。這個自己去搞嘍。也有快捷鍵提示的插件,自己去搜。
2,搜索方便。支持全項目 或 目錄下 搜索,支持正則搜索 匹配大小寫等。
3,支持ftp 寫完了直接提交到外網 調試有木有 哈哈哈
4,支持svn 寫完了直接提交有木有
5,自動語法檢查 inspector code 會給出為定義變數 未定義方法等等一大堆錯誤。代碼右側會有顏色標記。一般會有紅色 為語法錯誤,黃色為建議。一般當右上角為綠色小方塊證明代碼完美無缺,嘻嘻。
6,支持自動補全注釋 和 語法提示。
7, 代碼格式化。這是必須的啊。
8,有時候你改了文件名,phpstorm 會相應的改掉你引用文件名的代碼。智能的不要不要的。
9,有代碼地圖的插件,自己去搜。
10,appearance theme 選擇dakura ,Editor color & fonts theme 選擇 monokai ,暗黑的加上彩色的代碼,眼睛很舒服。
11,自定義代碼模板,設置裡面叫live tenplates ,如定義 echo tab 補全 為<?php echo $XX ?>
❽ 提高PHP開發效率的技巧
用單引號代替雙引號來包含字元串,這樣做會更快一些。因為PHP會在雙引號包圍的字元串中搜尋變數,單引號則不會,注意:只有echo能這么做,它是一種可以把多個字元串當作參數的「函數」(譯註:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。
1、如果能將類的方法定義成static,就盡量定義成static,它的速度會提升將近4倍。
2、$row[』id』] 的速度是$row[id]的7倍。
3、echo 比 print 快,並且使用echo的多重參數(譯註:指用逗號而不是句點)代替字元串連接,比如echo $str1,$str2。
4、在執行for循環之前確定最大循環數,不要每循環一次都計算最大值,最好運用foreach代替。
5、注銷那些不用的變數尤其是大數組,以便釋放內存。
6、盡量避免使用__get,__set,__autoload。
7、require_once()代價昂貴。
8、include文件時盡量使用絕對路徑,因為它避免了PHP去include_path里查找文件的速度,解析操作系統路徑所需的時間會更少。
9、如果你想知道腳本開始執行(譯註:即伺服器端收到客戶端請求)的時刻,使用$_SERVER[『REQUEST_TIME』]要好於time()。
10、函數代替正則表達式完成相同功能。
11、str_replace函數比preg_replace函數快,但strtr函數的效率是str_replace函數的四倍。
❾ 一個優秀的php程序員應該具備哪些技能
1、文件目錄處理函數包80%以上的函數的功能的靈活運用。
2、日期時間函數中的80%以上的函數的功能的靈活運用
3、數學函數庫中的100%的內容。
4、網路庫中的60%以上的內容,對各個函數的功能比較熟悉。
5、字元串處理函數下的60%以上的內容,特別是各種處理函數。
6、正則表達式函數下的90%以上的內容,特別是各種正則處理
7、一些安全庫下的40%以上的內容,如果對於安全沒有接觸的話根本就不可能掌握PHP
8、XML處理,熟悉SAX、DOM以及JDOM的優缺點並且能夠使用其中的一種完成XML的解析及內容處理。
9、圖形圖像函數庫下的80%以上的內容,特別是一些圖像生成和處理
10、MySQL 資料庫函數下的90%以上的內容,特別是處理各種數據的函數
11、數組處理函數下的90%以上的內容,特別是各種操作處理函數
12、其它PEAR,PECL,和一些擴展類庫中的80%以上的內容,特別是一些常用的類的處理
13、針對不同的需求,查找不同的函數庫。
14、測試:必須熟悉使用phpunit編寫測試用例完成代碼的自動測試。
15、管理:必須熟悉使用xinc, phing等完成工程管理的常用任務,例如工程編譯、生成phpdoc、生成、版本控制、自動測試。
16、排錯:應該可以根據異常信息比較快速的定位問題的原因和大致位置。
17、思想:必須掌握OOP的主要要求,這樣使用PHP開發的系統才能是真正的PHP系統。
18、規范:編寫的代碼必須符合流行的編碼規范,這樣程序的可讀性才比較好。
19、博學:掌握OOA、OOD、YiiFramework 、Zendframework、cakephp、symfony、模板技術等流行技術,掌握軟體架構設計思想、搜索引擎優化、緩存系統設計、網站負載均衡、系統性能調優等實用技術。
20、多去看別人寫的代碼,php優秀的框架很多,很多人在認知上就有一個錯誤。認為自己能用一個框架開發一個系統了就認為自己已經熟悉這個框架了,其實會使用他並沒有什麼一個框架基本都有用戶手冊,一看基本都會使用了,要想自己技術上面提升,建議多看看這些框架的實現原理(設計模式)。
希望通過對PHP程序員必備技能的整理,能夠幫助到你,更好的探索php程序世界。
❿ 中高級PHP開發者應該掌握哪些技術
一個成功PHP高級開發工程師,不僅需要精通PHP開發,資料庫設計建模,伺服器架構,還需要熟悉各種系統結構,如文章系統、圖片系統、人力資源管理系統、樓市系統、電子商務系統、廣告公告系統、流量統計系統、企業自動建站系統、留言問答系統、BBS、博客等,最重要的工程要有一定的項目實戰經驗。 1、熟練使用PHP+MYSQL編程,熟悉HTML , Div, CSS, JavaScript, Smarty模板技術;常用設計模式必須掌握,設計模式是前輩的總結、經驗; 2、、熟悉主流PHP框架,熟悉網站開發的流程; 3、有良好的編程習慣,良好的溝通能力,具有較強的分析、解決問題能力;能自主完成模塊開發; 4、html/css必須會,不要求你會切會div+css,但是至少要知道,因為php是一種嵌入html中使用的語言; 5、熟悉Linux 開發環境;linux不需要會,會的話肯定更好,一般公司都有專門伺服器管理人員的。