php高級工程師面試題_php高級程序員面試題
對于PHP高級工程師而言,學(xué)會做好面試準(zhǔn)備很有必要,那么你知道面試中有哪些面試題嗎?下面小編已經(jīng)為你們整理了php高級工程師面試題,一起來看看吧。
php高級工程師面試題一
1.高并發(fā)大訪問量的mysql優(yōu)化,服務(wù)器優(yōu)化?
字段建索引、主從數(shù)據(jù)庫、讀寫分離、表分區(qū)、負(fù)載均衡。
linux的慢查詢?nèi)罩緯涗沵ysql的超時查詢sql語句,定期察看進行優(yōu)化。
2.大訪問量下秒殺模塊程序怎么設(shè)計,如果使用mysql會有多賣的情況,就是訂單超過庫存。
將訂單數(shù)據(jù)緩存到內(nèi)存,如果用數(shù)據(jù)庫直接崩掉,毫無懸念的。
3.緩存的使用
能用靜態(tài)的用靜態(tài),不能靜態(tài)的用內(nèi)存緩存,例如memcache、redis,不能緩存的用數(shù)據(jù)庫。
4.session可不可以跨域?怎么跨域?
將PHP session機制重寫(PHP提供),將session存儲在memcache或者數(shù)據(jù)庫就可以跨域了。
另外session能以三種方式存儲,文件、數(shù)據(jù)庫、緩存。
5.了不了解非關(guān)系型數(shù)據(jù)庫?
mongodb
6.會不會寫shell腳本以及l(fā)inux的操作
還會問一下時下流行的東西,比如做沒做過微信開發(fā),例如微信支付開發(fā)、APP移動開發(fā),等等問題。
問的核心東西都是圍繞這些轉(zhuǎn)的,如果有筆試會讓你寫sql,php功能(例如冒泡排序等排序),還有邏輯題。
php高級工程師面試題二
1.數(shù)據(jù)庫中的事務(wù)是什么?
答:事務(wù)就是一系列的操作,這些操作完成一項任務(wù)。只要這些操作里有一個操作沒有成功,事務(wù)就操作失敗,發(fā)生回滾事件。即撤消前面的操作,這樣可以保證數(shù)據(jù)的一致性。而且可以把操作暫時放在緩存里,等所有操作都成功有提交數(shù)據(jù)庫,這樣保證費時的操作都是有效操作。
2. 用PHP寫出顯示客戶端IP與服務(wù)器IP的代碼
答:$_SERVER['SERVER_ADDR']服務(wù)器
$_SERVER['REMOTE_ADDR']客戶端
3. error_reporting(247)什么作用?
答:PHP 顯示所有錯誤 E_ALL
4. 打開php.ini中的Safe_mode,會影響哪些函數(shù)?至少說出6個。
答:1:用戶輸入輸出函數(shù)(fopen() file()require(),只能用于調(diào)用這些函數(shù)有相同腳本的擁有者)
2:創(chuàng)建新文件(限制用戶只在該用戶擁有目錄下創(chuàng)建文件)
3:用戶調(diào)用popen() systen()exec()等腳本,只有腳本處在sa fe_mode_exec_dir配置指令指定的 錄中才可能
4:加強HTTP認(rèn)證,認(rèn)證腳本擁有者的UID的劃入認(rèn)證領(lǐng)域范圍內(nèi),此外啟用安全模式下,不會設(shè)置PHP_AUTH
5:mysql服務(wù)器所用的用戶名必須與調(diào)用mysql_connect()的文件的擁有者用戶名相同
6:受影響的函數(shù)變量以及配置命令達(dá)到4個
5. MySQL數(shù)據(jù)庫,怎么優(yōu)化?
答:(1)配置優(yōu)化(服務(wù)器配置)
調(diào)節(jié)服務(wù)器參數(shù)(shell->mysqld-help 生成mysql配置選項和可配置變量的表)。
(2)建表優(yōu)化(表、字段設(shè)置)
(3)查詢優(yōu)化(sql語句)
6.寫一個函數(shù),能夠遍歷一個文件夾下的所有文件和子文件夾。(目錄操作)
$d = dir(dirname(__file__));
echo ̶Handle: ” . $d->handle . ̶\n”;
echo ̶Path: ” . $d->path . ̶\n”;
while ( false !== ($entry = $d->read ()) ) {
echo $entry . ̶
”;
}
$d->close ();
php高級工程師面試題三
1.數(shù)據(jù)庫中的事務(wù)是什么?
答:事務(wù)就是一系列的操作,這些操作完成一項任務(wù)。只要這些操作里有一個操作沒有成功,事務(wù)就操作失敗,發(fā)生回滾事件。即撤消前面的操作,這樣可以保證數(shù)據(jù)的一致性。而且可以把操作暫時放在緩存里,等所有操作都成功有提交數(shù)據(jù)庫,這樣保證費時的操作都是有效操作。
2. 用PHP寫出顯示客戶端IP與服務(wù)器IP的代碼
答:$_SERVER['SERVER_ADDR']服務(wù)器
$_SERVER['REMOTE_ADDR']客戶端
3. error_reporting(247)什么作用?
答:PHP 顯示所有錯誤 E_ALL
4. 打開php.ini中的Safe_mode,會影響哪些函數(shù)?至少說出6個。
答:1:用戶輸入輸出函數(shù)(fopen() file()require(),只能用于調(diào)用這些函數(shù)有相同腳本的擁有者)
2:創(chuàng)建新文件(限制用戶只在該用戶擁有目錄下創(chuàng)建文件)
3:用戶調(diào)用popen() systen()exec()等腳本,只有腳本處在sa fe_mode_exec_dir配置指令指定的 錄中才可能
4:加強HTTP認(rèn)證,認(rèn)證腳本擁有者的UID的劃入認(rèn)證領(lǐng)域范圍內(nèi),此外啟用安全模式下,不會設(shè)置PHP_AUTH
5:mysql服務(wù)器所用的用戶名必須與調(diào)用mysql_connect()的文件的擁有者用戶名相同
6:受影響的函數(shù)變量以及配置命令達(dá)到4個
5. MySQL數(shù)據(jù)庫,怎么優(yōu)化?
答:(1)配置優(yōu)化(服務(wù)器配置)
調(diào)節(jié)服務(wù)器參數(shù)(shell->mysqld-help 生成mysql配置選項和可配置變量的表)。
(2)建表優(yōu)化(表、字段設(shè)置)
(3)查詢優(yōu)化(sql語句)
6.寫一個函數(shù),能夠遍歷一個文件夾下的所有文件和子文件夾。(目錄操作)
$d = dir(dirname(__file__));
echo ̶Handle: ” . $d->handle . ̶\n”;
echo ̶Path: ” . $d->path . ̶\n”;
while ( false !== ($entry = $d->read ()) ) {
echo $entry . ̶
”;
}
$d->close ();
7、能夠使HTML和PHP分離開使用的模板
答:Smarty
8、使用哪些工具進行版本控制?
答:cvs
9、用PHP打印出前一天的時間格式是26-5-1 22:21:21
答:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’));
1、如何實現(xiàn)字符串翻轉(zhuǎn)?(3分)
答:echo strrev($a);
11、MYSQL取得當(dāng)前時間的函數(shù)是?,格式化日期的函數(shù)是
答:now(),date()
12. 請寫一個函數(shù)驗證電子郵件的格式是否正確
答:function checkEmail($email)
{
$pregEmail = ̶/([a-z-9]*[-_\.]?[a-z-9]+)*@([a-z-9]*[-_]?[a-z-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i”;
return preg_match($pregEmail,$email);
}
13. 簡述如何得到當(dāng)前執(zhí)行腳本路徑,包括所得到參數(shù)。
答:$script_name = basename(__file__); print_r($script_name);
14、檢測一個變量是否有設(shè)置的函數(shù)是否?是否為空的函數(shù)是?
答:isset($str),empty($str);
看了“php高級工程師面試題”