在我們之前的課程中,我們有介紹到了php面試題中關於thinkphp的題目、以及2017最全的php面試題目及答案總結、其中很多的php面試題都是在口述,也有很多筆試的PHP面試題,今天我們就給大家來總結下!
php面試題中的筆試
1.用PHP寫出顯示用戶端IP與伺服器IP的代碼
答:列印用戶端
IP:echo $_SERVER['REMOTE_ADDR'];
或者:
getenv('REMOTE_ADDR');
列印伺服器IP:
echo gethostbyname('www.meizhi520.com')
2.session與cookie的區別?
答:session:儲存使用者訪問的全域唯一變數,儲存在伺服器上的php指定的目錄中的(session_dir)的位置進行的存放 cookie:用來儲存連續訪問一個頁面時所使用,是儲存在用戶端,對於Cookie來說是儲存在使用者WIN的Temp目錄中的。 兩者都可通過時間來設定時間長短
3.表單中 get與post提交方法的區別?
答:get是發送請求HTTP協議通過url參數傳遞進行接收,而post是實體資料,可以通過表單提交大量資訊.
4.用PHP列印出前一天的時間格式是2013-11-26 12:11:11
答:
echodate('Y-m-d H:i:s', strtotime('-1 days'));
5.寫一個函數,能夠遍曆一個檔案夾下的所有檔案和子檔案夾。(目錄操作)
$d = dir(dirname(__file__));echo "Handle: " . $d->handle . "\n";echo "Path: " . $d->path . "\n";while ( false !== ($entry = $d->read ()) ) {echo $entry . "";}$d->close ();
6.請寫一個函數驗證電子郵件的格式是否正確
function checkEmail($email){$pregEmail = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i";return preg_match($pregEmail,$email);}
7.實現中文字串截取無亂碼的方法。
function GBsubstr($string, $start, $length) { if(strlen($string)>$length){ $str=null; $len=$start+$length; for($i=$start;$i<$len;$i++){ if(ord(substr($string,$i,1))>0xa0){ $str.=substr($string,$i,2); $i++; }else{ $str.=substr($string,$i,1); } } return $str.'…'; }else{ return $string; }}
8.JS的轉向函數是?怎麼引入一個外部JS檔案?
window.location.href <script type="text/javascript" src="js/js_function.js"></script>
9.MySQL資料庫,怎麼最佳化?
答: (1)配置最佳化(伺服器配置)
(2)建表最佳化(表、欄位設定)
(3)查詢最佳化(sql語句)
答: 1、選取最適用的欄位屬性,儘可能減少定義欄位長度,盡量把欄位設定NOT NULL,例如’省份,性別’,最好設定為ENUM
2、使用串連(JOIN)來代替子查詢:
3、使用聯合(UNION)來代替手動建立的暫存資料表
4、交易處理:
5、鎖定表,最佳化交易處理:
6、使用外鍵,最佳化鎖定表
7、建立索引:
8、最佳化查詢語句
10.如何使用下面的類,並解釋下面什麼意思?
class test{ function Get_test($num){ $num=md5(md5($num)."En"); return $num; }}
答:
$testnum = "123″; $object = new test(); $encrypt = $object->Get_test($testnum); echo $encrypt;
類test裡麵包含Get_test方法,執行個體化類調用方法多字串加密
總結:
這裡我們只是給大家總結了一下,在php面試題中會常遇到的筆試題,大家可以對此參考,自己也可以進行擴充,增強自己的知識點!希望對你有所協助!
相關推薦:
2017最全的php面試題目及答案總結
php面試題中Thinkphp題目的匯總
2017招聘季:PHP面試題超強總結!
11個提問頻率最高的php面試題