有必要深入研究 PHP 源碼嗎?有哪些好的方法?
我前幾天去了某公司二面,首先問我有沒有讀過源碼,怎麼優化PHP性能之類的,而我之前都是靠看書自學。目前的水平是市面上賣的PHP書籍的知識點大部分都懂,但核心的優化方法了解不多,求指點!
面試官面試你, 不是要求你去讀源碼, 而是在考察你是否對PHP足夠熟悉, 所以了解一些底層的實現(不得不說, 一些表面現象確實需要對底層有一些了解).
我個人覺得, 並不一定需要去讀源代碼, 只需要了解一些常見的ISSUE就行, 比如PHP的數組為什麼不按照索引遍歷, 等等.
我的博客經常會有這樣的文章分享, 歡迎關注: http://www.laruence.com/
thanks大部分的優化應該輪不到語言層次的優化,實現的了解還是有必要知道一點..我全看一樓鳥哥的博客的..
圍觀鳥哥…
鳥哥說的不錯……
不過我覺得和你這次面試關係不大…感覺不是特別高級的職位面試…如果沒猜錯…面試官在裝逼而已我現在也在學習PHP內核相關的東西,《Extending and embedding PHP》不錯,雖然現在PHP5.4即將發布正式版本,但這本書還是很有參考價值。
另外就是看PHP源碼, 先從開發PHP extension開始,我認為在Linux下開發要簡單快速很多。
最重要是興趣吧,享受學習探索過程。以為php學習簡單的其實是大錯特錯。php語言入門容易,但是語言特點繁雜,並不適合養成優秀的編程習慣。所以會寫php的人很多,寫出優秀代碼的反而很少。
回歸樓主的問題,研究學習php的源碼,個人覺得意義並不大。即便要學習,也只是出於個人興趣,很少會用於性能優化。實際上一個web的優化,也極少在php源碼上。你只需要不犯一些常見性能錯誤即可。
看php源碼,反倒不如多看一些開源的php程序,啟發一下自己。效果更好!
SO,提出這種問題的面試官,除了裝逼,不知道能為公司挖掘什麼樣的人才!
看看一本叫深入PHP內核的電子書
還好只是優化,沒問你會不會寫擴展 !
一般優化,http://phpe.net/category/tech/ 這個列表上最底下兩個帖子可能對你有幫助!
如果要寫擴展,自己慢慢熬吧能有時間有精力去讀源代碼,肯定會有收益的。但是能理解多少知識,就比較考驗你的基礎知識掌握情況:C語言基礎和常用演算法和數據結構是必須的。
源代碼級別的要求有點高哦,估計有這要求的應該是大公司。要精通C,還要熟悉zend。
看看php源碼對於了解php還是大有裨益的,推薦:http://www.php-internal.com/book/
推薦閱讀:
※修改基於GPL協議的軟體,不公開源代碼,如何規避那個協議??
※閱讀離職程序員遺留下來的垃圾源代碼是怎樣一種體驗?
※哪些源碼下載網站比較可靠?
※如何獲取華為、中興、烽火這些廠家 發布的嵌入式設備 GPL源碼(包括工具鏈、kernel等相關代碼)?
※請問,閱讀源碼時,已有的代碼注釋究竟是促進學習還是阻礙學習?