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