首頁  >  文章  >  PHP 安全經驗相關面試題10大問題總結

PHP 安全經驗相關面試題10大問題總結

PHP中文网
PHP中文网原創
2018-06-04 20:23:0711004瀏覽

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

1 MySQL資料庫作發布系統的存儲,一天五萬條以上的增量,預計運維三年,怎麼優化?

a. 設計良好的資料庫結構,允許部分資料冗餘,盡量避免join查詢,提高效率。
b. 選擇合適的表格欄位資料類型和儲存引擎,適當的添加索引。
c. mysql庫主從讀寫分離。
d. 找規律分錶,減少單表中的資料量提高查詢速度。
e。增加緩存機制,例如memcached,apc等。
f. 不常改動的頁面,產生靜態頁面。
g. 書寫高效率的SQL。例如SELECT * FROM TABEL 改為SELECT field_1, field_2, field_3 FROM TABLE.

2 對於大流量的網站,您採用什麼樣的方法來解決各頁訪問量統計問題

a. 確認伺服器是否能支撐目前訪問量。
b. 最佳化資料庫存取。
c. 禁止外部存取連結(盜鏈), 例如圖片盜鏈。
d. 控製檔下載。
e. 使用不同主機分流。
f. 使用瀏覽統計軟體,了解訪問量,有針對性的進行最佳化。

3 寫出一個正規表示式,過慮網頁上的所有JS/VBS腳本(即把標記及其內容都去掉)

#答案:

PHP

/<[^>].*?>.*?<\/>/si

4 用PHP印出前一天的時間格式是2006-5-10 22:21:21

答:echo date('Y-m-d H:i:s' , strtotime('-1 天'));

5 echo(),print(),print_r()的差異

答案:echo是語言結構,無回傳值;print功能和echo基本上相同,不同的是print是函數,有回傳值;print_r是遞歸列印,用來輸出陣列物件

6 如何實現字串翻轉?

答:.用strrev函數唄,不准用PHP內建的就自己寫:

strrev($str)  
{  
    $len=strlen($str);  
    $newstr = &#39;&#39;;  
    for($i=$len;$i>=0;$i--)  
    {  
        $newstr .= $str{$i};  
    }  
    return $newstr;  
}

7 實作中文字串截取無亂碼的方法。

答:mb_substr()

8 如何用php的環境變數得到一個網頁位址的內容? ip位址又要怎麼得到?

答:$_SERVSR['REQUEST_URI'] , $_SERVER['REMOTE_ADDR']

9 求兩個日期的差數,例如2007-2-5 ~ 2007-3-6 的日期差數

#答:(strtotime('2007-3-6')-strtotime('2007-2-5'))/3600*24

10 如何透過javascript判斷一個視窗是否已經被屏蔽

答案:取得open()的回傳值,如果是null,就是屏蔽了

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn