每到最后關(guān)鍵階段,總會(huì)不斷的進(jìn)行模擬面試,php中文網(wǎng)為了一些學(xué)生能夠順利的完成學(xué)習(xí),找到理想工作。
PHP模擬面試題匯總?cè)缦拢?/p>
1.如何防止form表單重復(fù)提交?
2.Cookie被禁用了session還可以使用嗎?
3.你了解的或者用過(guò)的版本控制工具有哪些?簡(jiǎn)單說(shuō)明一下。
CVS,SVN, vss, git
4.單例模式的優(yōu)點(diǎn),如何實(shí)現(xiàn)?
5.單引號(hào)和雙引號(hào)的區(qū)別是什么?
(1)雙引號(hào)可以解析變量,單引號(hào)不能解析變量
(2)雙引號(hào)和單引號(hào)可以互相嵌套
(3)雙引號(hào)當(dāng)中的變量可以使用特殊字符分隔開,但是特殊 字符會(huì)原樣輸出,使用{}不會(huì)輸出
(4)雙引號(hào)當(dāng)中包含單引號(hào),單引號(hào)當(dāng)中包含變量,變量會(huì)被解析,單引號(hào)會(huì)被原樣輸出
(5)雙引號(hào)可以解析轉(zhuǎn)義字符,單引號(hào)不會(huì)解析轉(zhuǎn)義字符,單引號(hào)只會(huì)解析/本身和’單引號(hào)本身的轉(zhuǎn)義
(6)單引號(hào)當(dāng)中嵌套單引號(hào),雙引號(hào)當(dāng)中嵌套雙引號(hào),當(dāng)中的單引號(hào)和雙引號(hào)需要使用/轉(zhuǎn)義符合
(7)單引號(hào)效率要高于雙引號(hào)
6.對(duì)于大流量的網(wǎng)站,你采用什么樣的方法來(lái)解決訪問(wèn)量問(wèn)題?
7.MySQL數(shù)據(jù)庫(kù)中的字段類型varchar和char的主要區(qū)別是什么?那種字段的查找效率要高,為什么?
8.說(shuō)明echo(),var_dump(),print_r()的區(qū)別。
9.請(qǐng)說(shuō)明php中傳值與傳引用的區(qū)別。什么時(shí)候傳值什么時(shí)候傳引用?
10.說(shuō)明Include,include_once,require,require_once的區(qū)別?
11.優(yōu)化MYSQL數(shù)據(jù)庫(kù)的方法。(4分,多寫多得)
答:(1)選取最適用的字段屬性,盡可能減少定義字段長(zhǎng)度,盡量把字段設(shè)置NOT NULL,例如'省份,性別',最好設(shè)置為ENUM。
(2)使用連接(JOIN)來(lái)代替子查詢:
(3)使用聯(lián)合(UNION)來(lái)代替手動(dòng)創(chuàng)建的臨時(shí)表
(4)事務(wù)處理:
(5)鎖定表,優(yōu)化事務(wù)處理:
(6)使用外鍵,優(yōu)化鎖定表
(7)建立索引:
(8)優(yōu)化查詢語(yǔ)句
12.如何優(yōu)化查詢語(yǔ)句,提高查詢效率?
13.Session與cookie的區(qū)別?
14.Get和post的區(qū)別?
15.什么是mysql的事務(wù)?事務(wù)有哪些特性?
16.常用的超全局變量
$_GET ----->get傳送方式
$POST ----->post傳送方式
$REQUEST ----->可以接收到get和post兩種方式的值
17.HTTP狀態(tài)碼
200 - 請(qǐng)求成功
301 - 資源(網(wǎng)頁(yè)等)被永久轉(zhuǎn)義到其他URL
404 - 請(qǐng)求的資源(網(wǎng)頁(yè)等)不存在
505 - 內(nèi)部服務(wù)器錯(cuò)誤
1** - 信息,服務(wù)器收到的請(qǐng)求,需要請(qǐng)求者繼續(xù)執(zhí)行操作
2** - 成功,操作被成功接收并處理
3** - 重定向,需要進(jìn)一步的操作以完成請(qǐng)求
4** - 客戶端錯(cuò)誤,請(qǐng)求包含語(yǔ)法錯(cuò)誤或者無(wú)法完成請(qǐng)求
5** 服務(wù)器錯(cuò)誤,服務(wù)器在處理請(qǐng)求的過(guò)程 中發(fā)生了錯(cuò)誤
18.如何獲取客戶端的ip(要求取得一個(gè)int)和服務(wù)器ip的 代碼
客戶端:$_SERVER["REMOTE_ADDR"];或者getenv('REMOTE_ADDR')
服務(wù)器端:gethostbyname('www.survivalescaperooms.com')
19.寫出三種以上MySQL數(shù)據(jù)庫(kù)存儲(chǔ)引擎的名稱
MyISAM、InnoDB、BDB(BerkeleyDB)、Merge、Memory(Heap)、Example、Federated、Archive、CSV、Blackhole、MaxDB 等等十幾個(gè)引擎
20.使用過(guò) Memcache 緩存嗎,如果使用過(guò),能夠簡(jiǎn)單的描述一下它的工作原理
Memcahce 是把所有的數(shù)據(jù)保存在內(nèi)存當(dāng)中,采用 hash 表的方式,每條數(shù)據(jù)由 key 和 value 組成,每個(gè) key 是獨(dú)一無(wú)二的,當(dāng)要訪問(wèn)某個(gè)值的時(shí)候先按照找到值,然后返回結(jié)果。
Memcahce 采用 LRU 算法來(lái)逐漸把過(guò)期數(shù)據(jù)清除掉
21.說(shuō)明 Ajax 實(shí)現(xiàn)原理是什么及 json 在 Ajax 中起什么作用
Ajax 的工作原理是一個(gè)頁(yè)面的指定位置可以加載另一個(gè)頁(yè)面所有的輸出內(nèi)容,這樣就實(shí)現(xiàn)了一個(gè)靜態(tài)頁(yè)面也能獲取到數(shù)據(jù)庫(kù)中的返回?cái)?shù)據(jù)信息了。所以 Ajax 技術(shù)實(shí)現(xiàn)了一個(gè)靜態(tài)網(wǎng)頁(yè)在不刷新整個(gè)頁(yè)面的情況下與服務(wù)器通信,減少了用戶等待時(shí)間,同時(shí)也從而降低了網(wǎng)絡(luò)流量,增強(qiáng)了客戶體驗(yàn)的友好程度。
在使用 Ajax 時(shí),涉及到數(shù)據(jù)傳輸,即將數(shù)據(jù)從服務(wù)器返回到客戶端,服務(wù)器端和客戶端分別使用不同的腳步語(yǔ)言來(lái)處理數(shù)據(jù),這就需要一種通用的數(shù)據(jù)格式,XML 和 json 就是最常用的兩種,而 json 比 XML 更簡(jiǎn)單
22.php中字符串處理函數(shù)列舉3-6個(gè)
strlen() 函數(shù)返回字符串的長(zhǎng)度
strpos() 函數(shù)用于檢索字符串內(nèi)指定的字符或文本
strtolower — 將字符串轉(zhuǎn)變?yōu)樾?/p>
strtoupper –將字符串轉(zhuǎn)變?yōu)榇髮?/p>
strtr — 對(duì)字符串比較替換
substr — 對(duì)字符串進(jìn)行截取
explode — 將一個(gè)字符串用分割符轉(zhuǎn)變?yōu)橐粩?shù)組形式
implode — 將數(shù)組用特定的分割符轉(zhuǎn)變?yōu)樽址?/p>
綜上所述,是php中文網(wǎng)分享的PHP模擬面試題,以便大家參考學(xué)習(xí),多學(xué)多練,靈活運(yùn)用,在真正的面試中順利過(guò)關(guān)。最后預(yù)祝大家今后能找到滿意的工作。
新聞熱點(diǎn)
疑難解答