php常見面試問題
PHP技術員在求職面試中,要提前了解面試常見問題,那么你做好面試準備了嗎?下面小編已經為你們整理了php常見面試問題,一起來看看吧。
php常見面試問題—PHP開發(fā)部分
1.合并兩個數(shù)組有幾種方式,試比較它們的異同
2.請寫一個函數(shù)來檢查用戶提交的數(shù)據(jù)是否為整數(shù)(不區(qū)分數(shù)據(jù)類型,可以為二進制、八進制、十進制、十六進制數(shù)字)
3.PHP的strtolower()和strtoupper()函數(shù)在安裝非中文系統(tǒng)的服務器下可能會導致將漢字轉換為亂碼,請寫兩個替代的函數(shù)實現(xiàn)兼容Unicode文字的字符串大小寫轉換
4.PHP的is_writeable()函數(shù)存在Bug,無法準確判斷一個目錄/文件是否可寫,請寫一個函數(shù)來判斷目錄/文件是否絕對可寫
5.PHP的chmod()函數(shù)存在Bug,無法保證設置成功,請寫一個函數(shù)在指定路徑下創(chuàng)建一個目錄/文件并確??梢哉_設置權限掩碼
6.PHP處理上傳文件信息數(shù)組中的文件類型$_FILES['type']由客戶端瀏覽器提供,有可能是黑客偽造的信息,請寫一個函數(shù)來確保用戶上傳的圖像文件類型真實可靠
7.PHP通過對數(shù)據(jù)的URL編碼來實現(xiàn)與Javascript的數(shù)據(jù)交互,但是對于部分特殊字符的編解碼與Javascript的規(guī)則不盡相同,請具體說明這種差異,并針對UTF-8字符集的數(shù)據(jù),寫出PHP的編解碼函數(shù)和Javascript的編解碼函數(shù),確保PHP編碼數(shù)據(jù)可以被 Javascript正確解碼 、Javascript編碼的數(shù)據(jù)可以被PHP正確解碼
8.試闡述Memcache的key多節(jié)點分布的算法?當任一節(jié)點出現(xiàn)故障時PHP的Memcache客戶端將如何處置?如何確保Memcache數(shù)據(jù)讀寫操作的原子性?
9.如何實現(xiàn)PHP的安全最大化?怎樣避免SQL注入漏洞和XSS跨站腳本攻擊漏洞?
10.請設計一個數(shù)據(jù)結構可以實現(xiàn)無限級子菜單的樹型菜單功能并提供菜單生成算法,用UML描述設計并寫出相關PHP代碼
php常見面試問題—系統(tǒng)相關部分
1.請簡述Linux、FreeBSD、Soalaris、Mac OS、Windows幾種系統(tǒng)下進程與線程的內核實現(xiàn)方式、管理機制的異同
2.請簡述Linux/BSD系統(tǒng)下進程間通訊的方式有哪些,并具體說明在PHP下如何實現(xiàn)
3.請簡述Linux/BSD系統(tǒng)下系統(tǒng)的消息/事件異步通知機制有幾種,并加以比較
4.簡單比較TCP/UDP協(xié)議的異同,對于PHP的Socket擴展與Stream擴展,試比較兩者基于TCP/UDP協(xié)議的SOCKET編程差異?
5.為什么會出現(xiàn)僵死進程(孤兒進程)?怎樣查看僵死進程?如何解決僵死進程問題?
6.對于System-V消息隊列,如何解決系統(tǒng)本身對于消息隊列條數(shù)、總容量(字節(jié)數(shù))的限制?如何設置消息的優(yōu)先級別?請比較阻塞模式和非阻塞模式的異同,并說明如何避免非阻塞模式下的消息隊列堵塞?
7.請描述Apache 2.x版本的MPM(Multi-Processing Module)機制,并具體說明在不同的MPM機制下如何支持PHP?
8.請簡述PHP在Apache下的幾種運行方式并加以比較?如何讓PHP在Linux+Apache下以Fast CGI方式運行?
9. 請寫出讓PHP能夠在命令行下以腳本方式執(zhí)行時安裝PHP所必須指定的configure參數(shù),并說明如何在命令行下運行PHP腳本(寫出兩種方式)同時向PHP腳本傳遞參數(shù)?
10.請簡述PHP 5.2的內存池及其內存管理機制、垃圾回收機制
php常見面試問題
1、問題:PHP中的PEAR是什么?
回答:PEAR也就是為PHP擴展與應用庫(PHP Extension and Application Repository),它是一個PHP擴展及應用的一個代碼倉庫。
2、問題:如何用PHP和MySQL上傳視頻?
回答:我們可以在數(shù)據(jù)庫中存放視頻的地址,而不需要將真正的視頻數(shù)據(jù)存在數(shù)據(jù)庫中??梢詫⒁曨l數(shù)據(jù)存放在服務器的指定文件夾下,上傳的默認大小是2MB,但是我們也可以在php.ini文件中修改max_file size選項來改變。
3、問題:PHP中的錯誤類型有哪些?
回答:PHP中遇到的錯誤類型大致有3類。
提示:這都是一些非常正常的信息,而非重大的錯誤,有些甚至不會展示給用戶。比如訪問不存在的變量。
警告:這是有點嚴重的錯誤,將會把警告信息展示給用戶,但不會影響代碼的輸出,比如包含一些不存在的文件。
錯誤:這是真正的嚴重錯誤,比如訪問不存在的PHP類。
4、問題:如何在PHP中定義常量?
回答:PHP中使用Define()來定義常量。
define(“Newconstant”,30);
看了“php常見面試問題”