1、cookie、session的聯絡和區別,多台web伺服器如何共享session?
cookie在客戶端儲存狀態,session在伺服器端儲存狀態。但是由於在伺服器端儲存狀態的時候,在客戶端也需要乙個標識,所以session也可能要借助cookie來實現儲存標識位的作用。
cookie包括名字,值,域,路徑,過期時間。路徑和域構成cookie的作用範圍。cookie如果不設定過期時間,則這個cookie在瀏覽器程序 存在時有效,關閉時銷毀。如果設定了過期時間,則cookie儲存在本地硬碟上,在各瀏覽器程序間可以共享。
session儲存在伺服器端,伺服器用一種雜湊表型別的結構儲存資訊。當乙個連線建立的時候,伺服器首先搜尋有沒有儲存的session id,如果沒有,則建立乙個新的session,將session id返回給客戶端,客戶端可以選擇使用cookie來儲存session id。也可以用其他的方法,比如伺服器端將session id附在url上。
區別:(1).cookie在本地,session在伺服器端。
(2).cookie不安全,容易被欺騙,session相對安全。
(3).session在伺服器端,訪問多了會影響伺服器效能。
(4). cookie有大小限制,為3k
多伺服器共享session可以嘗試將session儲存在memcache中。
2、http協議中的post和get有何區別?
get用於獲取資訊,不應該用於修改資訊,post可用於更新修改資訊。
get可傳輸資料大小和url有關,而post沒有限定大小,大小和伺服器配置有關。
get放在url中,因此不安全,而post傳輸資料對於使用者來說是不可見的,所以相對安全。
在ajax: post不被快取,get被快取所以一般在請求結尾加math.random();
server端接受:因為在submit提交的時候是按不同方式進行編碼的,所以服務端在接受的時候會按照不同的方式進行接受!
編碼方式:如果傳遞資料是非-ascii,那麼get一般是不適應的,所以在傳遞的時候會做編碼處理!
3、reqiure的include都可包含檔案,二者的區別何在?
require在包含檔案出錯之後返回致命錯誤,跳出執行,而include 在包含檔案出錯之後返回警告資訊,繼續執行。
4、php中web上傳檔案的原理是什麼,如何限制上傳檔案的大小?
php上傳檔案預設大小為2m,設定上傳大小的配置項是upload_max_filesize,post_max_size設定一次post中php能接收的最大資料量,應該比upload_max_filesize大。
5、寫乙個函式,可以遍歷資料夾下的所有檔案和資料夾。
不知道我的理解是不是不對,如果是簡單的列出檔案和資料夾的話,下面兩個應該可以。本人水平菜,沒發現什麼陷阱..考慮了一下,會不會題目是要 求做乙個遍歷,把子資料夾下的檔案都要顯示出來,這樣的話需要使用遞迴對資料夾進行顯示。對每次scandir出來的條目進行is_dir判斷,是dir 的話遞迴進行下一輪的scandir。
PHP面試題(附答案)
1.在php中,當前指令碼的名稱 不包括路徑和查詢字串 記錄在預定義變數 1 中 而鏈結到當前頁面的的前一頁面url記錄在預定義變數 2 中 script name也可以 其它的見參考手冊 語言參考 變數 預定義變數 當前執行指令碼的絕對路徑名 d inetpub wwwroot php est.p...
新浪面試題
記得不太清了 大致意思是 tcp ip udp imcp 等協議屬於應用層,運輸層等等,是乙個選擇題。session和cookie的區別 從一段html中正則匹配出來的url。參考 pattern src w preg match all pattern,content,matches array ...
PHP面試題及答案二
1.在php中,當前指令碼的名稱 不包括路徑和查詢字串 記錄在預定義變數 1 中 而鏈結到當前頁面的的前一頁面url記錄在預定義變數 2 中 script name也可以 php test.php 前執行指令碼的絕對路徑名 d inetpubwwwrootphp est.php echo serve...