面試,是企業(yè)了解人才能力的一個重要環(huán)節(jié)。下面小編給大家分享下應聘php程序員崗位時,企業(yè)HR會準備給大家做的面試題:
1.數(shù)據(jù)庫中的事務是什么?
答:事務就是一系列的操作,這些操作完成一項任務。只要這些操作里有一個操作沒有成功,事務就操作失敗,發(fā)生回滾事件。即撤消前面的操作,這樣可以保證數(shù)據(jù)的一致性。而且可以把操作暫時放在緩存里,等所有操作都成功有提交數(shù)據(jù)庫,這樣保證費時的操作都是有效操作。
2. 用PHP寫出顯示客戶端IP與服務器IP的代碼
答:$_SERVER['SERVER_ADDR']服務器
$_SERVER['REMOTE_ADDR']客戶端
3. error_reporting(2047)什么作用?
答: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認證,認證腳本擁有者的UID的劃入認證領域范圍內(nèi),此外啟用安全模式下,不會設置PHP_AUTH
5:mysql服務器所用的用戶名必須與調(diào)用mysql_connect()的文件的擁有者用戶名相同
6:受影響的函數(shù)變量以及配置命令達到40個
5. MySQL數(shù)據(jù)庫,怎么優(yōu)化?
答:(1)配置優(yōu)化(服務器配置)
調(diào)節(jié)服務器參數(shù)(shell->mysqld-help 生成mysql配置選項和可配置變量的表)。
(2)建表優(yōu)化(表、字段設置)
(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分離開使用的模板(1分)
答:Smarty
8、使用哪些工具進行版本控制?(1分)
答:cvs
9、用PHP打印出前一天的時間格式是2006-5-10 22:21:21(2分)****************
答:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’));
10、如何實現(xiàn)字符串翻轉(zhuǎn)?(3分)
答:echo strrev($a);
11、MYSQL取得當前時間的函數(shù)是?,格式化日期的函數(shù)是(2分)
答:now(),date()
401代表未被授權,header(“Location:www.xxx.php”);
12. 請寫一個函數(shù)驗證電子郵件的格式是否正確 (2分)
答: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);
}
13. 簡述如何得到當前執(zhí)行腳本路徑,包括所得到參數(shù)。(2分)
答:$script_name = basename(__file__); print_r($script_name);
14、檢測一個變量是否有設置的函數(shù)是否?是否為空的函數(shù)是?(2分)
答:isset($str),empty($str);