日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

新浪PHP面试题

發(fā)布時(shí)間:2024/4/14 php 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 新浪PHP面试题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、cookie、session的聯(lián)系和區(qū)別,多臺web服務(wù)器如何共享session?

cookie在客戶端保存狀態(tài),session在服務(wù)器端保存狀態(tài)。但是由于在服務(wù)器端保存狀態(tài)的時(shí)候,在客戶端也需要一個(gè)標(biāo)識,所以session也可能要借助cookie來實(shí)現(xiàn)保存標(biāo)識位的作用。
cookie包括名字,值,域,路徑,過期時(shí)間。路徑和域構(gòu)成cookie的作用范圍。cookie如果不設(shè)置過期時(shí)間,則這個(gè)cookie在瀏覽器進(jìn)程?存在時(shí)有效,關(guān)閉時(shí)銷毀。如果設(shè)置了過期時(shí)間,則cookie存儲(chǔ)在本地硬盤上,在各瀏覽器進(jìn)程間可以共享。
session存儲(chǔ)在服務(wù)器端,服務(wù)器用一種散列表類型的結(jié)構(gòu)存儲(chǔ)信息。當(dāng)一個(gè)連接建立的時(shí)候,服務(wù)器首先搜索有沒有存儲(chǔ)的session?id,如果沒有,則建立一個(gè)新的session,將session?id返回給客戶端,客戶端可以選擇使用cookie來存儲(chǔ)session?id。也可以用其他的方法,比如服務(wù)器端將session?id附在URL上。
區(qū)別:

(1).cookie在本地,session在服務(wù)器端。
(2).cookie不安全,容易被欺騙,session相對安全。
(3).session在服務(wù)器端,訪問多了會(huì)影響服務(wù)器性能。
(4).?cookie有大小限制,為3K
多服務(wù)器共享session可以嘗試將session存儲(chǔ)在memcache中。

?

2、http協(xié)議中的post和get有何區(qū)別?

GET用于獲取信息,不應(yīng)該用于修改信息,POST可用于更新修改信息。
GET可傳輸數(shù)據(jù)大小和URL有關(guān),而POST沒有限定大小,大小和服務(wù)器配置有關(guān)。
GET放在URL中,因此不安全,而POST傳輸數(shù)據(jù)對于用戶來說是不可見的,所以相對安全。
在ajax:?post不被緩存,get被緩存所以一般在請求結(jié)尾加Math.random();
SERVER端接受:因?yàn)樵趕ubmit提交的時(shí)候是按不同方式進(jìn)行編碼的,所以服務(wù)端在接受的時(shí)候會(huì)按照不同的方式進(jìn)行接受!
編碼方式:如果傳遞數(shù)據(jù)是非-ASCII,那么GET一般是不適應(yīng)的,所以在傳遞的時(shí)候會(huì)做編碼處理!

?

3、reqiure的include都可包含文件,二者的區(qū)別何在?
require在包含文件出錯(cuò)之后返回致命錯(cuò)誤,跳出運(yùn)行,而include?在包含文件出錯(cuò)之后返回警告信息,繼續(xù)運(yùn)行。

?

4、php中web上傳文件的原理是什么,如何限制上傳文件的大小?

PHP上傳文件默認(rèn)大小為2M,設(shè)置上傳大小的配置項(xiàng)是upload_max_filesize,post_max_size設(shè)置一次POST中PHP能接收的最大數(shù)據(jù)量,應(yīng)該比upload_max_filesize大。

?

5、寫一個(gè)函數(shù),可以遍歷文件夾下的所有文件和文件夾。

  不知道我的理解是不是不對,如果是簡單的列出文件和文件夾的話,下面兩個(gè)應(yīng)該可以。本人水平菜,沒發(fā)現(xiàn)什么陷阱..考慮了一下,會(huì)不會(huì)題目是要?求做一個(gè)遍歷,把子文件夾下的文件都要顯示出來,這樣的話需要使用遞歸對文件夾進(jìn)行顯示。對每次scandir出來的條目進(jìn)行is_dir判斷,是dir?的話遞歸進(jìn)行下一輪的scandir。

function bianli($dir){if(is_dir($dir)){$output = scandir($dir);print_r($output);}}function bianli2($dir) {if(is_dir($dir)){$command = "ls -a $dir";$ret = `$command`;$pattern = "/\S+/";if(preg_match_all($pattern,$ret,$matches)){print_r($matches);}} }

6、有mail.log的一個(gè)文檔,內(nèi)容為若干郵件地址,其中用’\n’將郵件地址分隔。要求從中挑選出sina.com的郵件地址(包括從文件讀取、過濾到列印出來)。

$mail = file_get_contents('mail.log'); $pattern = "/\S+sina\.com/"; $rpattern = "/\\n/"; preg_filter($rpattern,"",$mail); if(preg_match_all($pattern,$mail,$matches)) {print_r($matches); }

?

轉(zhuǎn)載于:https://www.cnblogs.com/SherryIsMe/p/3487262.html

總結(jié)

以上是生活随笔為你收集整理的新浪PHP面试题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。