php面試題

1.表單提交get和post的區別
(1) get時從服務器獲取數據,post是向服務器發送數據
(2) get是將參數加到action的url後面一key value形式 值和表單內各個字段對應 post是通過httppost機制 將表單中的內容放在http的header中
(3) get傳輸的數據較少,在2kb左右(url的長度並沒有限制,是瀏覽器的限制) post傳輸的數據量大 一般不受限制
(4) get 安全性較低 post較高
(5) get限制form表單中的數據值必須爲ASCII post支持整個字符集

2.include和require的區別 require_once include_once
include包含的文件不存在時,發出警告,而require則會報錯,
ps:但使用上述引用文件時,會退出php解釋範圍,所以在被引用的文件中必須有php標記

3.echo print print_r的區別
(1) echo 是關鍵字 可以輸出多個變量的值,以逗號分隔 沒有返回值,支持出boolean類型之外的類型
ture 輸出1,false什麼也不輸出
(2) pirnt 返回值是int
(3) print_r() 函數 不僅可以輸出值,還可以輸出類型
4.php和html分離的模板
smart

5.如何理解MVC

6.優化MySql的方法

7.用php獲取服務端和客戶端的ip
“http://”.SERVER[HTTPHOST]. _SERVER[‘PHP_SELF’].”?”.SERVER[QUERYSTRING]; _SERVER[‘REMOTE_ADDR’]
$_SERVER[‘SERVER_ADDR’]

8.對於大流量的網站,您採用什麼樣的方法來解決訪問量問題?
https://my.oschina.net/lht007/blog/124613
1.資源文件分離 OSS
2.負載均衡 SLB
3.內容分發 CDN
4.數據庫分離 RDS
5.中間件內存數據庫 Redis
6.高效雲服務器 Nginx + php
7.代碼層優化 生成靜態資源 緩存memcache
8.數據庫優化 索引 緩存

9.值傳遞額應用傳遞的區別
值傳遞:在函數範圍內對變量的任何改變在函數外都會被忽略
引用傳遞:在函數內的任何改變在函數外都會顯示

10.php中error_reporting的作用
設置php報錯的級別

11.獲得當前腳本的執行路徑包括參數
“http://”.SERVER[HTTPHOST]. _SERVER[‘PHP_SELF’].”?”.$_SERVER[‘QUERY_STRING’];

12請舉例說明在你的開發過程中用什麼方法來加快頁面的加載速度。
http://blog.sae.sina.com.cn/archives/5191
https://www.ibm.com/developerworks/cn/web/wa-speedweb/index.html
https://www.bbsmax.com/A/WpdKoXAXdV/

13.如何修改session的生存時間
lifeTime=243600;//sessionsetcookieparams( lifeTime);
session_start();

14.有一個網頁地址 http://www.domain.com/xxx.php,如何得到它的內容?
$readcontents = fopen(“http://www.phpres.com/index.html“, “rb”);
contents=streamgetcontents( readcontents);
fclose($readcontents);

echo file_get_contents(“http://www.phpres.com/index.html“);

15.二維數組排序
http://ustb80.blog.51cto.com/6139482/1079938

16 寫一個函數,獲取url的擴展名 如a/b.php?a=1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章