一、單選題(共30題,每題5分)
1.下列關於PHP垃圾回收的說法,錯誤的是?
A、開啟/關閉垃圾回收機制可以通過修改php配置實現
B、可以在程序中使用gc_enable() 和 gc_disable()開啟和關閉。
C、PHP中的垃圾回收機制,會大幅度提升系統性能。
D、開啟垃圾回收機制后,針對內存泄露的情況,可以節省大量的內存空間,但是由於垃圾回收算法運行耗費時間,開啟垃圾回收算法會增加腳本的執行時間。
參考答案:C
答案解析:PHP中的垃圾回收機制,僅僅在循環回收算法確實運行時會有時間消耗上的增加。但是在平常的(更小的)腳本中應根本就沒有性能影響。
2.樹結構分為?
A、二叉樹和完全二叉樹
B、滿二叉樹和二叉樹
C、有序樹和無序樹
D、btree和搜索樹
參考答案:C
答案解析:有序樹和無序樹。
3.數據項與數據元素關系說法錯誤的是?
A、數據元素是數據的基本單位
B、一個數據項可由若干個數據元素組成
C、數據項是數據的不可分割的最小單位
D、數據對象是性質相同的數據元素的集合
參考答案:B
答案解析:
數據元素:是數據的基本單位,在程序中通常作為一個整體來進行考慮和處理。一個數據元素可由若干個數據項組成。數據項是數據的不可分割的最小單位。數據項是對客觀事物某一方面特性的數據描述。 數據對象:是性質相同的數據元素的集合,是數據的一個子集。如字符集合C={‘A’,’B’,’C,…}
4.在HTTP 1.1中,狀態碼 404 的含義是(),如果返回“找不到文件”的提示,則可用 header 函數,其語句為()
A、拒絕執行,header("Location: http://www.sijiaomao.com/404.php");
B、未授權,Header("HTTP/1.1 404 Not Found");
C、拒絕執行,Header("HTTP/1.1 404 Not Found");
D、未授權,header("Location: http://www.sijiaomao.com/404.php");
參考答案:B
答案解析:拒絕執行狀態碼是403 ,header("Location:XXXX")默認是做302狀態的跳轉,所以答案為B。
5.在mysql中用a,b,c三個字段建立一個復合索引a_b_c,請問以下哪個查詢效率最差?
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
答案解析:最左匹配原則:該復合索引包含a,a_b,a_b_c。 復合索引只有在前面的字段為精確查詢時,才會用上后面的復合索引,一旦出現不精確查詢,則不會使用復合索引。 A選項中,使用a_b索引。 B選項中,使用了a_b索引,且有order by c故效率最差。 C選項中,使用a_b索引。 D選項中,使用a_b_c索引。
6.一條sql語句從執行到返回結果中間花費時間最長的環節是哪步
A、從php到mysql的網絡層
B、mysql解析語句 ,優化,生成執行計划
C、執行
D、返回結果
參考答案:D
答案解析:查詢結果的數據量越大返回時間越長,遠遠超過其他環節的占用時間。
7.關於設計模式遵循的原則,說法錯誤的是?
A、組合優於繼承
B、針對實現編程
C、對擴展開放,對修改關閉
D、降低對象之間的耦合
8.一個網站用過lvs+keepalived做了集群,負載均衡算法是RR,但是網站后台登陸的時候,一直提示登錄超時,無法使用,請問如何解決這個問題?
A、將網站后台請求不做負載均衡
B、修改負載均衡算法為wlc
C、設置LVS參數,添加persistence_timeout參數
D、修改負載均衡算法為ip hash</p><p><br/>
9.CSRF攻擊描述錯誤的是?
A、CSRF需要有JavaScript代碼
B、CSRF攻擊惡意代碼位於第三方站點上
C、過濾用戶的輸入可以防止惡意代碼注入到某個站點,但是它無阻止法惡意代碼在第三方站點上運行
D、CSRF符合同源策略
10.關於PHP模式修飾符說法錯誤的是?
A、i 大小寫不敏感匹配
B、m ^將只匹配字符串的開頭
C、x 空白和#注釋將被忽略
D、將替換后的字符串作為php代碼評估執行
參考答案:B
答案解析:m為增強的行錨點模式,\\n的前后也會被認為結束和開始
很多人在剛接觸這個行業的時候或者是在遇到瓶頸期的時候,總會遇到一些問題,比如學了一段時間感覺沒有方向感,不知道該從那里入手去學習,對此我整理了一些資料,需要的可以免費分享給大家(11年架構師帶你解讀年薪50萬面試通關秘籍。)
如果喜歡我的文章,想與一群資深開發者一起交流學習的話,獲取更多相關大廠面試咨詢和指導,歡迎加入我的學習交流群點擊此處PHP高級交流
11 6.3個不同元素依次進棧,有()不同的出棧序列
A、A、4
B、B、5
C、C、6
D、D、7
12.多個線程可同時操作一個數據,為了保證該數據的准確性,可將操作該數據的部分改為()
A、只寫
B、只讀
C、異步
D、同步
13.HTTP協議如何工作?
A、解析域名->通過dns拿到IP->建立TCP連接->向服務器拿到請求->返回信息
B、通過dns拿到IP->建立TCP連接->向服務器拿到請求->返回信息
C、解析域名->通過dns拿到IP->向服務器拿到請求->建立TCP連接->返回信息
D、解析域名->向服務器拿到請求->通過dns拿到IP->建立TCP連接->返回信息
14.以下關於HTTP method 的說法,錯誤的是?
A、一台服務器要與HTTP1.1兼容,只要為資源實現GET和HEAD方法即可
B、PUT讓服務器用請求的主體部分來創建一個由所請求的URL命名的新文檔,或者,如果那個URL已經存在的話,就用干這個主體替代它
C、POST起初是用來向服務器輸入數據的。實際上,通常會用它來支持HTML的表單。表單中填好的數據通常會被送給服務器,然后由服務器將其發送到要去的地方。
D、TRACE方法請求web服務器告知其支持的各種功能。可以查詢服務器支持哪些方法或者對某些特殊資源支持哪些方法
15.以下JavaScript代碼的運行結果是()
A、true
B、False
C、false
D、True
16.關於header請求頭,說法錯誤的是
A、Upgrade: HTTP/2.0 切換協議版本
B、Rang bytes=0-2000 請求一段內容,如0到2000字節,可用於斷點下載
C、Vary 使用緩存的版本,一般用於代理服務器
D、X-Requested-With 異步請求
17.關於PHP數組的大小正確的是
A、hash Bucket的大小,最小為8,以2x增長。
B、初始數組不給元素分配空間
C、數組會誰元素的變動隨時變化
D、擴容之后需要表不用做任何操作
18.在MySQL中,可用於創建一個新數據庫的SQL語句為()
A、CREATE DATABASE
B、CREATE TABLE
C、CREATE DATABASES
D、CREATE DB
19.大量在外部排序中使用的數據結構是()
A、hashtable
B、B+Tree
C、RB-tree
D、skip list
20.以下關於PHP字符串說法錯誤的是?
A、PHP字符串二進制安全的
B、PHP字符串最大為2G
C、PHP字符串可以被序列化
D、PHP字符串可以使用\0來結束
21.下列數據結構中,能用二分法進行查找的是( )。
A、 順序存儲的有序線性表
B、 線性鏈表
C、 二叉鏈表
D、 有序線性鏈表
22.is_numberic()函數的含義?
A、判斷傳入值是不是數值
B、將傳入值轉換為整數
C、將傳入值轉換為數值
D、判斷傳入值是不是小數
23.哪項不是yii入口腳本主要工作?
A、定義全局常量
B、包含 [[Yii]] 類文件
C、加載應用配置
D、加載過濾器
24.以下代碼將會調用display_result() ?
A、錯誤
B、正確
C、編譯錯誤
D、無答案
25.PHP的三個模塊不包括哪個?
A、內核
B、zend引擎
C、擴展層
D、解析層
26.下面關於opcode的說法錯誤的是?
A、opcode 是Php的擴展模塊
B、用apc 或者xcache 緩存可以緩存php的opcode
C、opcode 是php腳本語言編譯后的中間語言。
D、緩存opcode 后 可以加快網站的運行速度
27.關於php運行機制錯誤的是:
A、php總共有三個模塊:內核、Zend引擎、擴展層
B、PHP通過SAPI和Apache相連
C、Zend引擎可以將源文件轉換成二進制文件運行
D、操作mysql的功能沒有包含在php內核中
參考答案:C
28.黑客利用緩沖區溢出漏洞進行攻擊時,對於這一威脅,最可靠的解決方案是( )
A、安裝防火牆
B、安裝用戶身份認證系統
C、安裝系統打補丁
D、安裝防病毒軟件
29.隨着業務的增長,信息系統的訪問量和數據流量快速增加,采用負載均衡(Load Balance)方法可避免由此導致的系統性能下降甚至崩潰。以下關於負載均衡的敘述中,錯誤的是()。
A、負載均衡通常由服務器端安裝的附加軟件來實現
B、負載均衡並不會增加系統的吞吐量
C、負載均衡可在不同地理位置、不同網絡結構的服務器群之間進行
D、負載均衡可使用戶只通過一個IP地址或域名就能訪問相應的服務器
30.SMJ二進制字節順序正確的是?
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