2020滴滴最新PHP試題(附答案及解析)

一、單選題(共30題,每題5分)
1.下列關(guān)于PHP垃圾回收的說法,錯(cuò)誤的是?
A、開啟/關(guān)閉垃圾回收機(jī)制可以通過修改php配置實(shí)現(xiàn)
B、可以在程序中使用gc_enable() 和 gc_disable()開啟和關(guān)閉。
C、PHP中的垃圾回收機(jī)制,會(huì)大幅度提升系統(tǒng)性能。
D、開啟垃圾回收機(jī)制后,針對(duì)內(nèi)存泄露的情況,可以節(jié)省大量的內(nèi)存空間,但是由于垃圾回收算法運(yùn)行耗費(fèi)時(shí)間,開啟垃圾回收算法會(huì)增加腳本的執(zhí)行時(shí)間。
參考答案:C
答案解析:PHP中的垃圾回收機(jī)制,僅僅在循環(huán)回收算法確實(shí)運(yùn)行時(shí)會(huì)有時(shí)間消耗上的增加。但是在平常的(更小的)腳本中應(yīng)根本就沒有性能影響。
2.樹結(jié)構(gòu)分為?
A、二叉樹和完全二叉樹
B、滿二叉樹和二叉樹
C、有序樹和無序樹
D、btree和搜索樹
參考答案:C
答案解析:有序樹和無序樹。
3.數(shù)據(jù)項(xiàng)與數(shù)據(jù)元素關(guān)系說法錯(cuò)誤的是?
A、數(shù)據(jù)元素是數(shù)據(jù)的基本單位
B、一個(gè)數(shù)據(jù)項(xiàng)可由若干個(gè)數(shù)據(jù)元素組成
C、數(shù)據(jù)項(xiàng)是數(shù)據(jù)的不可分割的最小單位
D、數(shù)據(jù)對(duì)象是性質(zhì)相同的數(shù)據(jù)元素的集合
參考答案:B
答案解析:
數(shù)據(jù)元素:是數(shù)據(jù)的基本單位,在程序中通常作為一個(gè)整體來進(jìn)行考慮和處理。一個(gè)數(shù)據(jù)元素可由若干個(gè)數(shù)據(jù)項(xiàng)組成。數(shù)據(jù)項(xiàng)是數(shù)據(jù)的不可分割的最小單位。數(shù)據(jù)項(xiàng)是對(duì)客觀事物某一方面特性的數(shù)據(jù)描述。 數(shù)據(jù)對(duì)象:是性質(zhì)相同的數(shù)據(jù)元素的集合,是數(shù)據(jù)的一個(gè)子集。如字符集合C={‘A’,’B’,’C,…}
4.在HTTP 1.1中,狀態(tài)碼 404 的含義是(),如果返回“找不到文件”的提示,則可用 header 函數(shù),其語句為()
A、拒絕執(zhí)行,header("Location: http://www.sijiaomao.com/404.php");
B、未授權(quán),Header("HTTP/1.1 404 Not Found");
C、拒絕執(zhí)行,Header("HTTP/1.1 404 Not Found");
D、未授權(quán),header("Location: http://www.sijiaomao.com/404.php");
參考答案:B
答案解析:拒絕執(zhí)行狀態(tài)碼是403 ,header("Location:XXXX")默認(rèn)是做302狀態(tài)的跳轉(zhuǎn),所以答案為B。
5.在mysql中用a,b,c三個(gè)字段建立一個(gè)復(fù)合索引a_b_c,請(qǐng)問以下哪個(gè)查詢效率最差?
A、select * from test where a=10 and b>50
B、select * from test where a=10 and b>10 order by c
C、select * from test where a=10 and b=10 order by a
D、select * from test where a=10 and b = 10 order by c
參考答案:B
答案解析:最左匹配原則:該復(fù)合索引包含a,a_b,a_b_c。 復(fù)合索引只有在前面的字段為精確查詢時(shí),才會(huì)用上后面的復(fù)合索引,一旦出現(xiàn)不精確查詢,則不會(huì)使用復(fù)合索引。 A選項(xiàng)中,使用a_b索引。 B選項(xiàng)中,使用了a_b索引,且有order by c故效率最差。 C選項(xiàng)中,使用a_b索引。 D選項(xiàng)中,使用a_b_c索引。
6.一條sql語句從執(zhí)行到返回結(jié)果中間花費(fèi)時(shí)間最長(zhǎng)的環(huán)節(jié)是哪步
A、從php到mysql的網(wǎng)絡(luò)層
B、mysql解析語句 ,優(yōu)化,生成執(zhí)行計(jì)劃
C、執(zhí)行
D、返回結(jié)果
參考答案:D
答案解析:查詢結(jié)果的數(shù)據(jù)量越大返回時(shí)間越長(zhǎng),遠(yuǎn)遠(yuǎn)超過其他環(huán)節(jié)的占用時(shí)間。
7.關(guān)于設(shè)計(jì)模式遵循的原則,說法錯(cuò)誤的是?
A、組合優(yōu)于繼承
B、針對(duì)實(shí)現(xiàn)編程
C、對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉
D、降低對(duì)象之間的耦合
參考答案:B。答案解析:設(shè)計(jì)模式(面向?qū)ο螅┯衅叽笤瓌t,分別是: 1.開放-封閉原則 2.單一職責(zé)原則 3.依賴倒轉(zhuǎn)原則 4.迪米特法則(也稱為最小知識(shí)原則) 5.接口隔離原則 6.合成/聚合復(fù)用原則 7.里氏代換原則 詳情參考 :http://chabaoo.cn/article/83946.htm
8.一個(gè)網(wǎng)站用過lvs+keepalived做了集群,負(fù)載均衡算法是RR,但是網(wǎng)站后臺(tái)登陸的時(shí)候,一直提示登錄超時(shí),無法使用,請(qǐng)問如何解決這個(gè)問題?
A、將網(wǎng)站后臺(tái)請(qǐng)求不做負(fù)載均衡
B、修改負(fù)載均衡算法為wlc
C、設(shè)置LVS參數(shù),添加persistence_timeout參數(shù)
D、修改負(fù)載均衡算法為ip hash</p><p><br/>
參考答案:C
答案解析:略
9.CSRF攻擊描述錯(cuò)誤的是?
A、CSRF需要有JavaScript代碼
B、CSRF攻擊惡意代碼位于第三方站點(diǎn)上
C、過濾用戶的輸入可以防止惡意代碼注入到某個(gè)站點(diǎn),但是它無阻止法惡意代碼在第三方站點(diǎn)上運(yùn)行
D、CSRF符合同源策略
參考答案:A
答案解析:XSS攻擊需要JavaScript代碼,CSRF攻擊不需要JavaScript代碼。
10.關(guān)于PHP模式修飾符說法錯(cuò)誤的是?
A、i 大小寫不敏感匹配
B、m ^將只匹配字符串的開頭
C、x 空白和#注釋將被忽略
D、將替換后的字符串作為php代碼評(píng)估執(zhí)行
參考答案:B
答案解析:m為增強(qiáng)的行錨點(diǎn)模式,\n的前后也會(huì)被認(rèn)為結(jié)束和開始
11.6.3個(gè)不同元素依次進(jìn)棧,有()不同的出棧序列
A、A、4
B、B、5
C、C、6
D、D、7
參考答案:B
答案解析:對(duì)于n個(gè)不同的元素進(jìn)棧,出棧序列的個(gè)數(shù)為6\*5\*4/4\*3\*2\*1為5,也就是卡特蘭數(shù)
12.多個(gè)線程可同時(shí)操作一個(gè)數(shù)據(jù),為了保證該數(shù)據(jù)的準(zhǔn)確性,可將操作該數(shù)據(jù)的部分改為()
A、只寫
B、只讀
C、異步
D、同步
參考答案:D
答案解析:數(shù)據(jù)只讀的話那還怎么操作。
13.HTTP協(xié)議如何工作?
A、解析域名->通過dns拿到IP->建立TCP連接->向服務(wù)器拿到請(qǐng)求->返回信息
B、通過dns拿到IP->建立TCP連接->向服務(wù)器拿到請(qǐng)求->返回信息
C、解析域名->通過dns拿到IP->向服務(wù)器拿到請(qǐng)求->建立TCP連接->返回信息
D、解析域名->向服務(wù)器拿到請(qǐng)求->通過dns拿到IP->建立TCP連接->返回信息
參考答案:A
答案解析:解析域名->通過dns拿到IP->建立TCP連接->向服務(wù)器拿到請(qǐng)求->返回信息。
14.以下關(guān)于HTTP method 的說法,錯(cuò)誤的是?
A、一臺(tái)服務(wù)器要與HTTP1.1兼容,只要為資源實(shí)現(xiàn)GET和HEAD方法即可
B、PUT讓服務(wù)器用請(qǐng)求的主體部分來創(chuàng)建一個(gè)由所請(qǐng)求的URL命名的新文檔,或者,如果那個(gè)URL已經(jīng)存在的話,就用干這個(gè)主體替代它
C、POST起初是用來向服務(wù)器輸入數(shù)據(jù)的。實(shí)際上,通常會(huì)用它來支持HTML的表單。表單中填好的數(shù)據(jù)通常會(huì)被送給服務(wù)器,然后由服務(wù)器將其發(fā)送到要去的地方。
D、TRACE方法請(qǐng)求web服務(wù)器告知其支持的各種功能。可以查詢服務(wù)器支持哪些方法或者對(duì)某些特殊資源支持哪些方法。
參考答案:D
答案解析:
HTTP method
·一臺(tái)服務(wù)器要與HTTP1.1兼容,只要為資源實(shí)現(xiàn)GET和HEAD方法即可
·GET是最常用的方法,通常用于請(qǐng)求服務(wù)器發(fā)送某個(gè)資源。
·HEAD與GET類似,但服務(wù)器在響應(yīng)中值返回首部,不返回實(shí)體的主體部分
·PUT讓服務(wù)器用請(qǐng)求的主體部分來創(chuàng)建一個(gè)由所請(qǐng)求的URL命名的新文檔,或者,如果那個(gè)URL已經(jīng)存在的話,就用干這個(gè)主體替代它
·POST起初是用來向服務(wù)器輸入數(shù)據(jù)的。實(shí)際上,通常會(huì)用它來支持HTML的表單。表單中填好的數(shù)據(jù)通常會(huì)被送給服務(wù)器,然后由服務(wù)器將其發(fā)送到要去的地方。
·TRACE會(huì)在目的服務(wù)器端發(fā)起一個(gè)環(huán)回診斷,最后一站的服務(wù)器會(huì)彈回一個(gè)TRACE響應(yīng)并在響應(yīng)主體中攜帶它收到的原始請(qǐng)求報(bào)文。TRACE方法主要用于診斷,用于驗(yàn)證請(qǐng)求是否如愿穿過了請(qǐng)求/響應(yīng)鏈。
·OPTIONS方法請(qǐng)求web服務(wù)器告知其支持的各種功能??梢圆樵兎?wù)器支持哪些方法或者對(duì)某些特殊資源支持哪些方法。
·DELETE請(qǐng)求服務(wù)器刪除請(qǐng)求URL指定的資源
15.以下JavaScript代碼的運(yùn)行結(jié)果是()
varm =false;if(m==true) document.write("True");else document.write("False");
A、true
B、False
C、false
D、True
參考答案:B
答案解析:略。
16.關(guān)于header請(qǐng)求頭,說法錯(cuò)誤的是
A、Upgrade: HTTP/2.0 切換協(xié)議版本
B、Rang bytes=0-2000 請(qǐng)求一段內(nèi)容,如0到2000字節(jié),可用于斷點(diǎn)下載
C、Vary 使用緩存的版本,一般用于代理服務(wù)器
D、X-Requested-With 異步請(qǐng)求
參考答案:D
答案解析:Vary 使用緩存的版本,一般用于代理服務(wù)器 Rang bytes=0-2000 請(qǐng)求一段內(nèi)存,如0到2000字節(jié),可用于斷點(diǎn)下載 Referer 來源地址 Upgrade: HTTP/2.0 切換協(xié)議版本 X-Requested-With ajax請(qǐng)求。
17.關(guān)于PHP數(shù)組的大小正確的是
A、hash Bucket的大小,最小為8,以2x增長(zhǎng)。
B、初始數(shù)組不給元素分配空間
C、數(shù)組會(huì)誰元素的變動(dòng)隨時(shí)變化
D、擴(kuò)容之后需要表不用做任何操作
參考答案:A
答案解析:HashTable的大小并不是固定不變的,當(dāng)nNumOfElements > nTableSize時(shí),會(huì)對(duì)HashTable進(jìn)行擴(kuò)容,以便于容納更多的元素。(所以可能加了一個(gè)值,但數(shù)組容量擴(kuò)的很多:以2x增長(zhǎng))
18.在MySQL中,可用于創(chuàng)建一個(gè)新數(shù)據(jù)庫的SQL語句為()
A、CREATE DATABASE
B、CREATE TABLE
C、CREATE DATABASES
D、CREATE DB
參考答案:A
答案解析:
A選項(xiàng)正確,創(chuàng)建庫語句為:CREATE DATABASE 數(shù)據(jù)庫名。
B選項(xiàng)CREATE TABLE,是創(chuàng)建表的語句。
C和D選項(xiàng)語法錯(cuò)誤。
19.大量在外部排序中使用的數(shù)據(jù)結(jié)構(gòu)是()
A、hashtable
B、B+Tree
C、RB-tree
D、skip list
參考答案:B
答案解析:外部排序指的是大文件的排序,即待排序的記錄存儲(chǔ)在外存儲(chǔ)器上,待排序的文件無法一次裝入內(nèi)存,需要在內(nèi)存和外部存儲(chǔ)器之間進(jìn)行多次數(shù)據(jù)交換,以達(dá)到排序整個(gè)文件的目的。外部排序最常用的算法是多路歸并排序,即將原文件分解成多個(gè)能夠一次性裝人內(nèi)存的部分,分別把每一部分調(diào)入內(nèi)存完成排序。然后,對(duì)已經(jīng)排序的子文件進(jìn)行歸并排序。 大規(guī)模數(shù)據(jù)存儲(chǔ)中,實(shí)現(xiàn)索引查詢這樣一個(gè)實(shí)際背景下,樹節(jié)點(diǎn)存儲(chǔ)的元素?cái)?shù)量是有限的(如果元素?cái)?shù)量非常多的話,查找就退化成節(jié)點(diǎn)內(nèi)部的線性查找了),這樣導(dǎo)致二叉查找樹結(jié)構(gòu)由于樹的深度過大而造成磁盤I/O讀寫過于頻繁,進(jìn)而導(dǎo)致查詢效率低下,那么如何減少樹的深度(當(dāng)然是不能減少查詢的數(shù)據(jù)量),一個(gè)基本的想法就是:采用多叉樹結(jié)構(gòu)(由于樹節(jié)點(diǎn)元素?cái)?shù)量是有限的,自然該節(jié)點(diǎn)的子樹數(shù)量也就是有限的)。 這樣我們就提出了一個(gè)新的查找樹結(jié)構(gòu)——多路查找樹。根據(jù)平衡二叉樹的啟發(fā),自然就想到平衡多路查找樹結(jié)構(gòu),也就是B~tree(B樹結(jié)構(gòu))。
20.以下關(guān)于PHP字符串說法錯(cuò)誤的是?
A、PHP字符串二進(jìn)制安全的
B、PHP字符串最大為2G
C、PHP字符串可以被序列化
D、PHP字符串可以使用\0來結(jié)束
參考答案:D
答案解析: 因?yàn)镻HP字符串是二進(jìn)制安全的 與C語言不同 所以不識(shí)別\0
21.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是( ?。?。
A、 順序存儲(chǔ)的有序線性表
B、 線性鏈表
C、 二叉鏈表
D、 有序線性鏈表
參考答案:A
答案解析:暫無
22.is_numberic()函數(shù)的含義?
A、判斷傳入值是不是數(shù)值
B、將傳入值轉(zhuǎn)換為整數(shù)
C、將傳入值轉(zhuǎn)換為數(shù)值
D、判斷傳入值是不是小數(shù)
參考答案:A
答案解析:is\_numeric — 檢測(cè)變量是否為數(shù)字或數(shù)字字符串
23.哪項(xiàng)不是yii入口腳本主要工作?
A、定義全局常量
B、包含 [[Yii]] 類文件
C、加載應(yīng)用配置
D、加載過濾器
參考答案:D
答案解析:入口文件主要工作如下: 定義全局常量; 注冊(cè) Composer 自動(dòng)加載器; 包含
Undefined control sequence \[
\] 類文件; 加載應(yīng)用配置; 創(chuàng)建一個(gè)應(yīng)用實(shí)例并配置; 調(diào)用
Undefined control sequence \[
\] 來處理請(qǐng)求。
24.以下代碼將會(huì)調(diào)用display_result() ?
{$x.'_result'}();
A、錯(cuò)誤
B、正確
C、編譯錯(cuò)誤
D、無答案
參考答案:C
答案解析:x.'\_result'.'()'; function display\_result(){ echo 'ok'; } 這樣子才不報(bào)錯(cuò)
25.PHP的三個(gè)模塊不包括哪個(gè)?
A、內(nèi)核
B、zend引擎
C、擴(kuò)展層
D、解析層
參考答案:D
答案解析:PHP總共三個(gè)模塊:內(nèi)核、zend引擎、以及擴(kuò)展層
26.下面關(guān)于opcode的說法錯(cuò)誤的是?
A、opcode 是Php的擴(kuò)展模塊
B、用apc 或者xcache 緩存可以緩存php的opcode
C、opcode 是php腳本語言編譯后的中間語言。
D、緩存opcode 后 可以加快網(wǎng)站的運(yùn)行速度
參考答案:A
答案解析:opcode 是Php腳本編譯后的中間碼。
27.關(guān)于php運(yùn)行機(jī)制錯(cuò)誤的是:
A、php總共有三個(gè)模塊:內(nèi)核、Zend引擎、擴(kuò)展層
B、PHP通過SAPI和Apache相連
C、Zend引擎可以將源文件轉(zhuǎn)換成二進(jìn)制文件運(yùn)行
D、操作mysql的功能沒有包含在php內(nèi)核中
參考答案:C
答案解析:Zend引擎將源文件轉(zhuǎn)換成opcode代碼,然后在虛擬機(jī)上運(yùn)行
28.黑客利用緩沖區(qū)溢出漏洞進(jìn)行攻擊時(shí),對(duì)于這一威脅,最可靠的解決方案是( )
A、安裝防火墻
B、安裝用戶身份認(rèn)證系統(tǒng)
C、安裝系統(tǒng)打補(bǔ)丁
D、安裝防病毒軟件
參考答案:C
答案解析:
C:安裝系統(tǒng)打補(bǔ)丁
29.隨著業(yè)務(wù)的增長(zhǎng),信息系統(tǒng)的訪問量和數(shù)據(jù)流量快速增加,采用負(fù)載均衡(Load Balance)方法可避免由此導(dǎo)致的系統(tǒng)性能下降甚至崩潰。以下關(guān)于負(fù)載均衡的敘述中,錯(cuò)誤的是()。
A、負(fù)載均衡通常由服務(wù)器端安裝的附加軟件來實(shí)現(xiàn)
B、負(fù)載均衡并不會(huì)增加系統(tǒng)的吞吐量
C、負(fù)載均衡可在不同地理位置、不同網(wǎng)絡(luò)結(jié)構(gòu)的服務(wù)器群之間進(jìn)行
D、負(fù)載均衡可使用戶只通過一個(gè)IP地址或域名就能訪問相應(yīng)的服務(wù)器
參考答案:B
答案解析:考核負(fù)載均衡方面的知識(shí)。
30.SMJ二進(jìn)制字節(jié)順序正確的是?
A、0101 0011 0100 1010 0100 1101
B、0011 0101 0100 1101 0100 1010
C、0101 0011 0100 0100 1010 1101
D、0011 0100 0100 1010 0011 1101
參考答案:A。答案解析:SMJ轉(zhuǎn)換二進(jìn)制為 010100110100101001001101
到此這篇關(guān)于2020滴滴最新PHP試題(附答案及解析) 的文章就介紹到這了,更多相關(guān)PHP試題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
- 這篇文章主要介紹了2020最新騰訊PHP試題(附答案及解析),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2020-06-01
- 這篇文章主要介紹了PHP程序員搜狐2019年面試題和答案解析,需要的朋友可以參考下2019-09-30
- 這篇文章主要介紹了新浪面試php筆試題與參考答案,結(jié)合具體實(shí)例形式分析了php面試中正則、函數(shù)、目錄、文件等知識(shí)點(diǎn)及操作技巧,需要的朋友可以參考下2019-09-12
2019年Java,php,運(yùn)維工程師轉(zhuǎn)型大數(shù)據(jù)前景展望,看看你屬于哪一類
這篇文章主要介紹了2019年Java,php,運(yùn)維工程師轉(zhuǎn)型大數(shù)據(jù)前景展望,總結(jié)分析了Java,php,運(yùn)維工程師等行業(yè)轉(zhuǎn)型大數(shù)據(jù)的發(fā)展前景與職業(yè)方向,需要的朋友可以參考下2019-07-05- 這篇文章主要介紹了2019 PHP面試題與常用技巧,總結(jié)分析了php常用知識(shí)點(diǎn)、注意事項(xiàng)與開發(fā)建議等,需要的朋友可以參考下2019-06-27
一個(gè) 1年工作經(jīng)驗(yàn)的 PHP 程序員是如何被面試官虐的?
這篇文章只是將我這幾周來的感受和體驗(yàn)分享出來,希望能給許多像我一樣,或者互聯(lián)網(wǎng)行業(yè)的新手帶來一些收獲2019-04-11