Ⅰ php面試寶典及PHP面試技巧
關於php面試寶典及PHP面試技巧
Php面試寶典究竟是怎樣的?對於眾多的php工程師來說,這是個十分有意義的問題。如果他們不能掌握科學的php面試寶典,最終他們面對的,也就是應聘的失敗。特別是當他們面臨要求較高的主考官時,就更要三思而後行了。
說到php面試寶典,可能在一百個人看來,就有一百個哈姆雷特。所以說,沒有絕對的寶典,只有相對的經驗。根據我的'總結,這些經驗主要體現在以下三個方面。
第一,專業技術不可少。
畢竟公司招的是專業的php工程師,如果他不能為企業解決相關的技術問題,是不可能得到這份工作的。在面試時,技術方面的主考官很可能把自己遇到的實際問題擺在應聘者眼前,如果應聘者回答得不能讓人滿意,很可能就止步於此了。假設你也要應聘php工程師,沒有知識上的積累,很可能會導致應聘失敗。程序員的職業發展規劃和分類
第二,綜合素質很重要。
在php面試寶典里,這一條也是相當重要的。所謂綜合素質,既包括應聘者的事業心、進取心,又包括他對工作的熱情、自律能力等內容。試想,如果一個應聘php工程師的人,除了在專業上的能力,其他一無是處,那麼,主考官不會錄用他的。這是因為,php工程師也要與公司里的其他人和平共處,也要得到別人的支持,或者給予別人支持。
第三,回答薪酬要討巧。
很多php工程師在面對主考官時,會被問到預期的工資的問題。這個問題確實有點棘手,如果你要價高了,招聘單位不會錄用你,如果你要價低了,又不能體現出自己的價值,讓自己受了委屈。所以,在回答這一問題時,一定要從實際情況出發,將行業內盛行的工資水平作為參考,加上自己的預期,給主考官報一個在合理范疇內的工資水準。
學習了php面試寶典,應聘者還要注意,任何一份工作都有自己的特殊性,如果你對這份工作沒有必要的激情和動力,就不要去爭奪它了。因為,這樣既浪費了你自己的時間和精力,也給主考官帶來了一定的困擾。
;Ⅱ PHP中高級面試題 – 第一天
一、寫一個函數,獲取一篇文章內容中的全部圖片,並下載
二、什麼是 CSRF 攻擊?XSS 攻擊?如何防範?
CSRF:跨站請求偽造,可以通過通過判斷來源和加 Token 的方式來防範。
XSS:跨站腳本攻擊,可以通過對內容轉義和過濾來防範,還有 CSP
三、應用中我們經常會遇到在 user 表隨機調取 10 條數據來展示的情況,簡述你如何實現該功能。
四、MYSQL 中主鍵與唯一索引的區別
主鍵:絕對不能有空值。唯一索引:可以有空值
五、http 與 https 的主要區別
關鍵是 S 上。簡而言之,https 建立連接後要先把 SSL 的證書發下去,有了公鑰和私鑰,就可以解密了。
六、兩台 mysql 伺服器,其中一台掛了,怎麼讓業務端無感切換,並保證正常情況下講台伺服器的數據是一致的
不是核心業務的話,先停寫,把備機拉起來,查看兩台機器的日誌,進行數據補償,開寫。
如果是核心業務的話,現在所有的操作都在正常的狀態機器上。把好的這台機器的備機拉起來,當主機。
以上全是應急操作。實際上資料庫的容災設計要復雜得多。
面試官要是問你,備機的數據不一致怎麼辦,你要勇敢懟回去,你們每秒多少寫入操作。按照百萬級表,每秒 1000 的寫入效率,正常的設計是,分布在 2 台機器上每台 500。這個級別的數據同步,出現差異的概率 可以忽略不計的。有一台出現問題,另一台也可以抗住。
(正常的操作,還是先停寫,等數據一致,切換,開寫。我們公司搞這些切換都是在凌晨 4.00 左右,核心業務的每秒寫操作,只有十幾個。前後耽擱不到 20 秒)。
七、10 瓶水,其中一瓶有毒,小白鼠喝完有毒的水之後,會在 24 小時後死亡,問:最少用幾只小白鼠可以在 24 小時後找到具體是哪一瓶水有毒。
答案:四隻
二進制問題。薛定諤的老鼠。
一隻老鼠有兩個狀態,死活,對應 01。假設老鼠的個數為 A,則有 2^A>=10; A=4;
思路很簡單,十瓶葯編號:0,1,10,11….1001;
0 不喝。第一隻老鼠喝所有個位是 1 的:13579,第二隻喝十位是 1 的,第三隻和百位是 1 的,第四隻喝千位是 1 的。
24 小時後,看下死了的是 1,活著的是 0。按老鼠的順序乖乖站好…… 假如第一隻和第三隻死了,那就是 0101,就是 5 有問題。
Ⅲ 30道2020年PHP面試題整理(附帶答案)
整理的一些面試題如有錯誤可評論區指出。
1. 使用過swoole嗎,怎麼設置心跳?
2. 如果訪問量達到100萬,選擇緩存,你會選擇redis還是memchache?選擇memchace,因為它只有一種類型,key-value,而redis的類型比memchace多,導致它的並發沒有memchace好。
3. psr2和psr4的區別?psr指的是php standards recommendation,意思是PHP標准建議。
psr2:編碼風格向導
psr4:自動載入。
4. mb_strlen和str_len的區別?
5. 下面會輸出什麼?
6. 使用二分法查找50出現的位置?
7. 將上面的數組進行翻轉,不使用內置函數?數組為:$arr = [1,3,5,12,34,45,50];
8. nginx負載均衡的演算法有round robin、weight、IP_hash、url_hash、fair等,解釋每種演算法。
9. 優化下面的代碼。
10. 實現一個單列模式。
11. 簡述一下觀察者模式。
12. 如何獲取請求頭的信息。
13. 高訪問量的網站優化策略包括硬體和軟體優化。
14. WebSocket原理。
15. Redis默認有16個庫。
16. linux進程之間通信方式有管道、信號量、消息隊列、信號、共享內容和套接字。
17. Git合並分支的命令。
18. Laravel外面引入路由的步驟。
19. 使用redis隊列防止商品超賣。
20. 請求中使用隊列的場景。
21. 單引號和雙引號的區別。
22. 微信支付、支付寶回調在伺服器崩潰時的解決方法。
23. 輸入網址回車的過程。
24. PHP常見字元串處理函數和數組。
25. 資料庫優化策略包括表設計、欄位選擇、引擎選擇、SQL優化、減少資料庫訪問和硬體優化。
26. 減少資料庫訪問次數的原因。
27. require和include的區別。
28. PHP7和PHP5的區別。
29. 資料庫優化策略。
30. Laravel保存session的步驟。
如果您對PHP後端技術或PHP架構技術感興趣,可以加入官方群,群內有管理整理的知識體系、源碼和學習視頻等資料,免費領取。這門課程深度對標騰訊T3-T4標准,適合1-5年的PHP開發者進階中高級、架構師,為自己增值漲薪。加入BAT特訓營可獲得內推大廠名額以及GO語言學習許可權。
Ⅳ 面試高級php工程師,一般會問到哪些問題
高並發大訪問量的mysql優化,伺服器優化?
欄位建索引、主從資料庫、讀寫分離、表分區、負載均衡。
linux的慢查詢日誌會記錄mysql的超時查詢sql語句,定期察看進行優化。
2.大訪問量下秒殺模塊程序怎麼設計,如果使用mysql會有多賣的情況,就是訂單超過庫存。
將訂單數據緩存到內存,如果用資料庫直接崩掉,毫無懸念的。
3.緩存的使用
能用靜態的用靜態,不能靜態的用內存緩存,例如memcache、redis,不能緩存的用資料庫。
4.session可不可以跨域?怎麼跨域?
將PHP session機制重寫(PHP提供),將session存儲在memcache或者資料庫就可以跨域了。
另外session能以三種方式存儲,文件、資料庫、緩存。
5.了不了解非關系型資料庫?
mongodb
6.會不會寫shell腳本以及linux的操作
還會問一下時下流行的東西,比如做沒做過微信開發,例如微信支付開發、APP移動開發,等等問題。
問的核心東西都是圍繞這些轉的,如果有筆試會讓你寫sql,php功能(例如冒泡排序等排序),還有邏輯題。
我當初面試了很多,這是一個我的面試經驗的總結,純手打忘採納。
Ⅳ PHP 面試問哪些問題可以比較准確的反映出應聘者的開發水平
問問這些:
命名空間怎麼用,有什麼好處
PHP下面如果過濾表單的內容,有哪些HTML的過濾庫比較好用?
PDO、mysqli、mysql這三種操作資料庫的方法,具體有哪些差異?
問問javascript/jquery,不懂javascript得php程序員要麼沒有什麼經驗,要麼水平比較低。
再問問php的設計模式,這個是有沒有接受過系統訓練的基礎了。
第一個問題答得好,證明有了解過現代php的開發,用什麼框架應該都能快速上手。
第二、三個問題,都是開發中必定用到的基礎的東西,算考查究竟懂不懂php。
第四個問題,關繫到有沒有問題解決能力,不懂javascript的php程序員肯定和前端搭配不好。
第五個問題,看看這個人有沒有潛力唄。
11月1日補充:
中間某個問題得罪人了,先抱歉一下。我認為我太武斷的說法也有道理,反正,這只是經驗之談,從上方老闆的角度出發,肯定是沒心思招個幹不了活的人慢慢培養的,哪怕你宏觀及看法方面很有遠見。團隊裡面肯定要有各種各樣的人和技能盞,看你的頭兒如何建團隊了。
Ⅵ 騰訊php面試題
騰訊php面試題
php程序員一般會遇到的面試題:
1. 基本知識點
HTTP協議中幾個狀態碼的含義:503 500 401 200 301 302
Include require include_once require_once 的區別.
PHP/Mysql中幾個版本的進化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改進等。
HEREDOC介紹
寫出一些php魔幻方法;
一些編譯php時的configure 參數
向php傳入參數的兩種方法。
(mysql)請寫出數據類型(int char varchar datetime text)的意思; 請問varchar和char有什麼區別;
error_reporting 等調試函數使用
您是否用過版本控制軟體? 如果有您用的版本控制軟體的名字是?
posix和perl標準的正則表達式區別;
Safe_mode 打開後哪些地方受限.
寫代碼來解決多進程/線程同時讀寫一個文件的問題。
寫一段上傳文件的代碼。
Mysql 的存儲引擎,myisam和innodb的區別。
2. web 架構,安全,項目經驗
介紹xdebug,apc,eAccelerator,Xcache,Zend opt的使用經驗。
使用mod_rewrite,在伺服器上沒有/archivers/567.html這個物理文件時,重定向到index.php?id=567 ,請先打開mod_rewrite.
MySQL資料庫作發布系統的存儲,一天五萬條以上的增量,預計運維三年,怎麼優化?
寫出一種排序演算法(原理),並說出優化它的方法。
請簡單闡述您最得意的開發之作
對於大流量的網站,您採用什麼樣的方法來解決各頁面訪問量統計問題
您是否用過模板引擎? 如果有您用的模板引擎的名字是?
請介紹Session的原理,大型網站中Session方面應注意什麼?
測試php性能和mysql資料庫性能的工具,和找出瓶頸的方法。
正則提出一個網頁中的'所有鏈接.
介紹一下常見的SSO(單點登陸)方案(比如dedecms整合discuz的passport)的原理。
您寫過的PHP框架的特點,主要解決什麼問題,與其他框架的不同點。
大型的論壇/新聞文章系統/SNS網站在性能優化上有什麼區別?
相冊類應用:要求在瀏覽器中能同時選中並上傳多個文件,圖片要求能剪裁,壓縮包在伺服器端解壓。能上傳單個達50M的文件。上傳過程中有進度條顯示。每個圖片能生成四種大小縮略圖,視頻文件要轉成flv供flash播放。敘述要涉及的各類開源軟體和簡單用途。
一群猴子排成一圈,按1,2,…,n依次編號。然後從第1隻開始數,數到第m只,把它踢出圈,從它後面再開始數,再數到第m只,在把它踢出去…,如此不停的進行下去,直到最後只剩下一隻猴子為止,那隻猴子就叫做大王。要求編程模擬此過程,輸入m、n, 輸出最後那個大王的編號。用程序模擬該過程。
3. unix/linux 基本使用
linux下查看當前系統負載信息的一些方法。
vim的基本快捷鍵。
ssh 安全增強方法;密碼方式和rsa key 方式的配置。
rpm/apt/yum/ports 裝包,查詢,刪除的基本命令。
Makefile的基本格式,gcc 編譯,連接的命令,-O0 和-O3區別。
gdb,strace,valgrind的基本使用.
4. 前端,HTML,JS
css盒模型。
javascript中的prototype。
javascript中this對象的作用域。
IE和firefox事件冒泡的不同。
什麼是怪異模式,標准模式,近標准模式。
DTD的定義
IE/firefox常用hack.
firefox,IE下的前端js/css調試工具。
;Ⅶ php技術面試一般都是什麼問題
可能會問以下問題:(這是一個多元的問題,這和你應聘的公司規模,行業,技術層次有一定的關系)
1、你會使用什麼框架?
2、你知道PHP有哪些框架?
3、你知道或使用過哪些PHP庫?
4、你用PHP寫過框架嗎?
5、你有作品嗎?
6、你怎麼調試PHP?
7、你知道設計模型嗎?
8、說一下PHP個版本的差異。
9、說一下某函數的具體作用。
10、給你一個演算法讓你用PHP實現。
... ...
總之有很多問題可能是意料不到的,所以建議你去牛客網多練習一下或者去海投簡歷體驗應聘過程,失敗沒什麼大不了的。