搜尋
首頁頭條2022年小米資深 PHP 工程師面試題(模擬考卷)

在面試前多看看有關公司的面試資料,對之後的面試會很有幫助。今天就帶給大家2022年小米高級 PHP 工程師面試題(模擬考卷),有著一定的參考價值,現在分享給大家,希望能幫助大家!

2022年小米資深 PHP 工程師面試題(模擬考卷)

相關推薦:《2022年PHP面試題大匯總(收藏)

1、透過哪一個函數,可以把錯誤轉換成異常處理?

A:set_error_handler
B:error_reporting
C:error2exception
D:catch

正確答案:

答案分析:set_error_handler() 可指定一個回呼函數,當錯誤發生時,會自動透過指定的回呼函數處理。在回調函數中拋出新的異常即可。

2、下列哪一個shell函數的描述是正確的?

A:shell函數可以先呼叫後定義
B: shell函數需使用關鍵字function定義
C:shell函數內的變數可以宣告為局部變數
D:shell函數只能透過return回傳值,1是成功,0是失敗

正確答案:

答案分析:shell函數必須先定義在呼叫;宣告時,不需要使用關鍵字;透過local可以定義函數內的局部變數;shell函數傳回值,0是成功,非0是錯誤,其他選項正確

3、下列關於全文檢索技術的說法,不對的是:

A: Solr是新一代的全文檢索元件,它比Lucene的搜尋效率高很多,還能支援HTTP的存取方式,PHP呼叫Solr也很方便。
B: MySQL中把一個欄位建立FULLTEXT索引,就可以實現全文檢索,目前MyISAM和InnoDB的table都支援FULLTEXT索引。
C: Sphinx是一個基於SQL的全文檢索引擎,可以結合MySQL做全文搜索,它可以提供比資料庫本身更專業的搜尋功能。
D: Lucene附帶的二元分詞分析器CJKAnalyzer切詞速度很快,能滿足一般全文的檢索需求。

正確答案:

#答案分析: Solr是新一代的全文檢索元件,它基於Lucene,所以說它比Lucene快就是胡扯:)

4、關於單例模式的說法,錯誤的是?

A:單例模式的目的在於確保在全域環境中,一個類別只能有一個實例存在
B:單利模式一般要講建構子設定為private
C:只需要將建構函式設定為private 即可確保全域中只有一個實例
D:連接資料庫的功能通常用單例模式實作

##正確答案:

答案分析:建構子設定為private,僅能確保無法透過new 建立新實例,但仍可透過clone、反序列化等方式創建多個實例。

5、正規的引擎表述錯誤的是?

A 正規引擎主要可以分為兩大類:一種是DFA,一種是NFA。

B 一般而論,NFA引擎則搜尋更快一些。但是DFA以表達式為主導,更容易操縱,因此一般程式設計師更偏好DFA引擎!
C NFA表達式主導,DFA文本主導.
D 可以使用是否支援忽略優先量詞和分組捕獲來判斷引擎類型:支援NFA,不支援DFA

正確答案: B

答案分析:正確的說法應該是:一般而論,DFA引擎則搜尋更快一些。但NFA以表達式為主導,更容易操縱,因此一般程式設計師更偏好NFA引擎!

6、方框中的正規表示式能與下列哪些選項相符?

/.\123\d/

#A. **123

B. ****1234
C . 1234
D.123

正確答案:B

答案分析:本題的要點是理解這個正規表示式的意思-從左到右,首先是零個或多個任意字元(.),跟著是一個星號(),然後是123,最後是一個數字。因此答案是B。

7、如下關於資料庫的說法,哪個是錯的? #

A:為了效率資料庫可以有多個讀庫
B:資料庫可以用主從做熱備
C:資料庫不能提供多主多從架構
D: 資料庫主從是透過日誌同步的

正確答案:C

#答案分析: 資料庫可以提供多主多從架構。

8、下列哪一個不是XSS漏洞的修復方式?

A:對參數進行htmlspecialchas過濾
B:對參數使用白名單過濾
C:不允許輸入的內容顯示到瀏覽器
D:禁止在js標籤內輸出使用者輸入的內容

正確答案:

答案分析:這類別過濾可以解決尖括號類型的xss,無法解決js標籤內的xss

9、下列哪一項不是PHP SAPI模式?

A.ISAPI
B.CGI
C.FastCGI
D.RESTFUL APi

## 正確答案:D

答案分析:A~C是最常用的模式,D是一種介面的組織方式。

10、對一個大檔案進行逐行遍歷,如下方法效能較高的是?

A:寫一個實作了IteratorAggregate 介面的類,透過該類使用foreach遍歷。

B:使用file_get_contents 將檔案內容一次載入內存,然後逐行遍歷。
C:透過exec函數,呼叫shell 工具遍歷
D:使用別人寫的類別庫

#正確答案:##A

答案分析:

使用IteratorAggregate 可將檔案開啟後透過移動指標的方式逐行遍歷,不受檔案大小影響。使用 file_get_contents 處理大檔案很容易導致PHP記憶體溢出;呼叫exec 會產生額外的進程,影響效能;其他人寫的類別庫品質不一定高。

11、以下選項,哪一個不是設計模式應該遵守的原則? A:組合優於繼承

B:針對介面程式設計

C:盡可能降低耦合
D:盡量使用高效能的語法

正確答案:

D答案分析:
設計模式的關注點在於程式碼的可維護性和可重複性,D選項不是設計模式關注的要點。

12、下列關於回溯的表達式錯誤的是? A ab.lmn 匹配abcdeflmnghijklmn 中的abcdeflmnghijklmn

B ab.?lmn 匹配abcdeflmnghijklmn 中的abcdeflmn

C ab??c 對cdeflmnghijklmn D .*lmn 匹配abcdeflmnghijklmn 中的abcdeflmn


#正確答案:

D##答案分析:D是貪婪匹配,所以應該要配對的結果是abcdeflmnghijklmn

13、函式中如果使用了try catch finally 語法結構,return 應該寫在哪裡?

A:finally 中B:try 中C:catch 中

D:任意位置



正確答案:

A

答案分析:try 中return 後finally 會繼續執行,如果finally 中也有return,則最終傳回值為finally 中return 的值。

14、以下關於NOSQL的說法,不對的是:

A: Redis支援字串、雜湊、列表、集合、有序集合等資料結構,目前Redis不支援事務。 B: MongoDB支援CAP定理中的AP,MySQL支援CAP中的CA,全部都支援不可能存在。 C: MongoDB不用先建立Collection的結構就可以直接插入數據,目前MongoDB不支援事務。

D: Memcache既支援TCP協議,也支援UDP協議,我們可以把PHP的Session存放到Memcache。



正確答案:

A

#答案分析:Redis支援交易。

15、Innodb 鎖定機制說法錯誤的是?

A:Innodb提供了表鎖定與行鎖兩種鎖定機制B:Innodb的表鎖定所會在表變更的時候觸發C:Innodb下update時會自動為涉及的行加上排他鎖,並建立出一個鏡像副本, 此時進行select 時查詢的是鏡像副本的資料

D:Innodb行鎖狀態下讀不受影響,寫會受影響(涉及到的資料)



正確答案:

A

16、下列哪一個是建立一個每週三01:00~04:00每3分鐘執行一次的crontab指令?

#

A: 1,4 3 /bin/bash /home/sijiaomao/ok.sh
B:/3 1,4 3 /bin/bash /home/sijiaomao/ok.sh
C:/ 3 1-4 3 /bin/bash /home/sijiaomao/ok.sh
D:/3 1-4  * /bin/bash /home/sijiaomao/ok.sh

正確答案:C

答案分析:A:每週三的1時4時每分鐘執行一次B:每週三的1時4時每3分鐘執行一次C:滿足要求D:每天的1時4時每3分鐘執行一次

#17、在拆分之前,系統中許多列表和詳情頁所需的數據是可以透過sql join來完成的。而拆分後,資料庫可能是分散式在不同實例和不同的主機上,join將變得非常麻煩。下面哪一種方法不能有效解決這個問題?

A 全域表,系統中所有模組都可能會依賴的一些表在各個庫中都保存。
B 欄位冗餘,「訂單表」中儲存「賣家Id」的同時,將賣家的「Name」欄位也冗餘,這樣查詢訂單詳情的時候就不需要再去查詢「賣家用戶表」。
C 主從複製,將資料庫的讀寫分離。
D 資料同步,定時A庫中的tbl_a表和B庫中tbl_b關聯,可以定時將指定的表做主從同步。

正確答案:C

答案分析:主從複製,分離資料庫的讀寫。只能擴容讀並發,並不能緩解跨庫join的問題。

18、關於網路IO模型,下列哪一項是正確的?

A.Select比Epoll更快
B.nginx使用的是select模型
C.apache支援select和epoll兩種方式的切換
D. epoll能支援更大的並發

正確答案:D

答案分析:A epoll更快一些。 B nginx使用epoll模型。 C apache只支援select

19、PHP執行的時候有以下執行過程:Scanning(Lexing) - Compilation - Execution - Parsing,其意義分別為:

A:將PHP程式碼轉換為語言片段(Tokens)、將Tokens轉換成簡單而有意義的表達式、將表達式編譯成Opocdes、順次執行Opcodes
B:將PHP程式碼轉換為語言片段(Tokens)、將Tokens轉換成簡單而有意義的表達式、順次執行Opcodes、將表達式編譯成Opocdes
C:將PHP程式碼轉換為語言片段(Tokens)、將表達式編譯成Opocdes、順次執行Opcodes、將Tokens轉換成簡單而有意義的表達式
D:將PHP程式碼轉換為語言片段(Tokens)、將表達式編譯成Opocdes、將Tokens轉換成簡單而有意義的表達式、順次執行Opcodes

正確答案:C

答案分析:正確答案為C,正確的順序為:Scanning(Lexing)、Parsing、Compilation、Execution

相關推薦:

##1、

2018 – 2022年前端JavaScript 面試題(收藏)

2、

前端面試江湖

以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! !

陳述
本文轉載於:微信公众号。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。