PHP面試題及答案
PHP是一種通用開源腳本語言,下面是百分網小編為大家搜索整理的關于PHP面試題及答案題,歡迎參考閱讀,希望對大家有所幫助!想了解更多相關信息請持續關注我們應屆畢業生考試網!
練習題一
1. echo count(“abc”); 輸出什么?
答案:1
2. 用PHP代碼寫出顯示客戶端IP與服務器IP的代碼。
答案:客戶端 getenv(‘REMOTE_ADDR’); 服務器端 getenv(‘SERVER_ADDR’);
// gethostbyname(“www.phpmst.com”);
3. error_reporting(2047)什么作用?
答案:相當于 error_reporting(‘E_ALL’); 輸出所有的錯誤。
4.如何實現PHP、JSP交互?
答案: 題目有點含糊不清,SOAP,XML_RPC,Socket function,CURL都可以實現這些,如果是考PHP和Java的整合,PHP內置了這種機制(如果考PHP和.NET的整合,也可以這么回答), 例如$foo = new Java(‘java.lang.System’);
5. 打開php.ini中的Safe_mode,會影響哪些參數?至少說出6個。
答案:此模塊打開時,php將檢查當前腳本的擁有者是否和受操作文件的擁有者相同,因此,將影響文件操作類函數,程序執行函數(program Execution Functions)。這些函數有.pathinfo,basename,fopen,system,exec,proc_open 等函數;
6. 請寫一個函數驗證電子郵件的格式是否正確(要求使用正則)。
function checkEmail($mail){
$reg = ‘/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/’;
$rst = preg_match($reg , $mail);
if($rst){
return TRUE;
}else {
return FALSE;
} }
7. 寫個函數用來對二維數組排序。
答案:array_multisort() 。
8、優化MYSQL數據庫的方法。
答案:(1).數據庫設計方面,這是DBA和Architect的.責任,設計結構良好的數據庫,必要的時候,去正規化(英文是這個:denormalize,中文翻譯成啥我不知道),允許部分數據冗余,避免JOIN操作,以提高查詢效率。
(2).系統架構設計方面,表散列,把海量數據散列到幾個不同的表里面.快慢表,快表只留最新數據,慢表是歷史存檔.集群,主服務器Read & write,從服務器read only,或者N臺服務器,各機器互為Master。
(3).(1)和(2)超越PHP programmer的要求了,會更好,不會沒關系.檢查有沒有少加索引。
(4).寫高效的SQL語句,看看有沒有寫低效的SQL語句,比如生成笛卡爾積的全連接啊,大量的Group By和order by,沒有limit等等.必要的時候,把數據庫邏輯封裝到DBMS端的存儲過程里面.緩存查詢結果,explain每一個sql語句。
(5).所得皆必須,只從數據庫取必需的數據,比如查詢某篇文章的評論數,select count(*) … where article_id = ? 就可以了,不要先select * … where article_id = ?然后msql_num_rows. 只傳送必須的SQL語句,比如修改文章的時候,如果用戶只修改了標題,那就… set title = ? where article_id = ?不要set content = ?(大文本)。
(6).必要的時候用不同的存儲引擎,比如InnoDB可以減少死鎖,HEAp可以提高一個數量級的查詢速度。
練習題二
1.請寫出PHP5權限控制修飾符。
答案:private protected public。
2.對于大流量的網站,您采用什么樣的方法來解決訪問量問題?
答案:首先,確認服務器硬件是否足夠支持當前的流量。
其次,優化數據庫訪問。
第三,禁止外部的盜鏈。
第四,控制大文件的下載。
第五,使用不同主機分流主要流量 第六,使用流量分析統計軟件。
3.在HTTP 1.0中,狀態碼 401 的含義是?;如果返回"找不到文件"的提示,則可用 header 函數, 其語句是?
答案:401的含義是未授權。
header(“HTTp/1.0 404 Not Found”);———找不到文件
header(“HTTp/1.1 403 Forbidden”);———不允許訪問
4.以Apache模塊的方式安裝PHP,在文件http.conf中首先要怎樣動態裝載PHP模塊,然后再用什么語句使得Apache把所有擴展名為php的文件都作為PHP腳本處理。
答案:動態裝載PHP模塊:LoadModule php5_module "c:/php/php5apache2.dll"
把所有擴展名為php的文件都作為pHp腳本處理: AddType application/x-httpd-php-source .phps AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml
5.類的屬性可以序列化后保存到 session 中,從而以后可以恢復整個類,這要用到的函數是?
答案:serialize() /unserialize()。
6.一個函數的參數不能是對變量的引用,除非在php.ini中把什么模塊設為on。
答案:allow_call_time_pass_reference。
【PHP面試題及答案】相關文章:
1.PHP算法面試題及答案
2.PHP面試題及答案(匯總)
3.PHP常見面試題及答案
4.PHP算法面試題目及答案
5.最新的PHP面試題及答案
6.提問頻率最高的PHP面試題及答案
7.php常見面試題及答案(33道)
8.PHP企業面試題附答案
9.php應聘面試題