PHP程序員面試題目_第1頁
PHP程序員面試題目_第2頁
PHP程序員面試題目_第3頁
PHP程序員面試題目_第4頁
PHP程序員面試題目_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、流行的php面試題及答案1. 在PHP中,當前腳本的名稱(不包括路徑和查詢字符串)記錄在預定義變量(1)中;而鏈接到當前頁面的URL記錄在預定義變量(2)中。答:echo $_SERVERPHP_SELF; echo $_SERVERHTTP_REFERER;2. 執(zhí)行程序段將輸出(3)。答:03. 在HTTP1.0中,狀態(tài)碼401的含義是(4);如果返回“找不到文件”的提 示,則可用header函數,其語句為(5)。答:未授權(5) header(HTTP/1.0 404 Not Found);4. 數組函數arsort 的作用是(6);語句error_reporting(2047)的作用是

2、(7)。答:對數組進行逆向排序并保持索引關系All errors and warnings5. 寫出一個正則表達 式,過慮網頁上的所有JS/VBS腳本(即把標記及其內容都去掉):(9)。答:/.*?.*?/si6. 以Apache模塊的方 www.ks-式安裝PHP在文件http.conf 中首 先要用語句(10)動態(tài)裝載PHP模塊,然后再用語句(11)使得Apache把所有擴展名為php的文件都作為PHP腳本處 理。答:(10) LoadModulephp5_moduleD:/xampp/apache/b in/php5apache2.dll(11) AddType applicati on

3、 /x-httpd-php-source .phpsAddTypeapplicati on /x-httpd-php .php .php5 .php4 .php3 .phtml7. 語句include 和require 都能把另外一個文件包含到當前文件中, 它們的區(qū) 別是(12);為 了避免多次包含同一文件,可以用語句(13) 來代替 www.ks- 它們。答:(12)發(fā)生異常時include產生警告require產生致命錯誤(13)require, on ce()/i nclude_ on ce()8. 類的屬性可以序列化后保存到session中,從而以后可以恢復整個類,這要 用到的函數是(

4、14 )。答: serialize() /unserialize()9. 一個函數的參數不能是對變量的引用,除非在php.ini中把(15)設為 on.答:allow_call_time_pass_referenee10.SQL 中 LEFT JOIN 的含 義是(16)。如果tbl_user 記錄了學生的姓名(name)和學號(ID),tbl_score記錄了學生(有的學生考試以后被開除了,沒有其記錄)的學號 (ID) 和考試成績(score)以及考試科目(subject),要想打印出各個學生姓名及對應的 的各科總成績,則可 以用SQL語句(17)。答:(16)自然左外連接(17) sele

5、ct name , count(score) assum_score from tbl_user left joi n tbl_score ontbl_userD=tbl_score .IDgroup by tbl_userD11.在PHP中,heredoc是一種特殊的字符串,它的結束標志必須(18)。答:結束標識符所在的行不能包含任何其它字符除;12. 用 PHF打印出 前一天的時間格式是 2006-5-10 22:21:21答:echo date(Y-m-d H:i:s, strtotime(-1 day);13. echo(),pri nt(),pri nt_r()的區(qū)別答:echo是語

6、言結構,無返回值;print功能和echo基本相同,不同的是print 是函數,有返回值;print_r 是遞歸打印,用于輸出數組對象14. 如何實現字符串翻轉?答:.用strrev函數唄,不準用PHP內置的就自己寫:strrev($str)$le n=strle n( $str);$n ewstr = ”;for($i=$le n; $i=0;$i-)$n ewstr .= $str$i;return $n ewstr;15. 實現中文字串截取無亂碼的方法。答:mb_substr()16. 使用php寫一段簡單查詢,查出所有姓名為“張三”的內容并打印出來 表名UserNameTelConte

7、ntDate張專畢業(yè)2006-10-11張科畢業(yè)2006-10-15張專畢業(yè)2006-10-15答:SELECT Name,Tel,Content,Date FROM User WHERE Name張三17. 如何使用下面的類,并解釋下面什么意思?class testGet_test($ num)$n um=md5(md5($ num).E n);return $n um;答:用法:$get_test = new test();$result = $get_test-Get_test(2);將$num變量進行兩次m

8、d5后返回,第2次的md5中的參數,在第一次md5($num) 后多加了 En18. 使用五種以上方式獲取一個文件的擴展名要求:dir/upload.image.jpg ,找出.jpg 或者 jpg ,答:使用五種以上方式獲取一個文件的擴展名1)get_ext1($file_name) return strrchr($file_ name, .);2)get_ext2($file_ name) return substr($file_ name, strrpos($file_ name, .); 一 一3)get_ext3($file_ name) 一 一return array_pop(ex

9、plode(., $file_ name); 一 一4)get_ext4($file_ name) 一 一$p = pathi nfo($file_ name);retur n $pexte nsion;5)get_ext5($file_ name)return strrev(substr(strrev($file_ name), 0,strpos(strrev($file_ name), .);19. 如何修改SESSION勺生存時間這個函式庫讓你處理和顯示各式格式的圖檔,它的另一個常見用途是制作所圖 檔。GD以外的另一個選擇是ImageMagick,但這個函式庫并不內建于 PHP之中, 必

10、須由系統(tǒng)管理員安裝在伺服器上答:其實 Session 還提供了一個函數 session_set_cookie_params(); 來設置 Session的生存期的,該函數必須在 session_start()函數調用之前調用:v ?php/保存一天$lifeTime = 24 * 3600;sessi on _set_cookie_params($lifeTime);sessi on _start();$_SESSIONadmi n = true;?20. 請寫一個函數,實現以下功能:字符串“ open_door”轉換成“OpenDoo”、” make_by_id” 轉換成 ” MakeByl

11、cT。30.請舉例說明在你的開發(fā)過程中用什么方法來加快頁面的加載速度A.生成靜態(tài)HTML生成xmlC可不用數據庫的盡量不用數據庫把變量參數存于文本.D.用ZEND加速答:21. 如何用php的環(huán)境變量得到一個網頁地址的內容?ip地址又要怎樣得到?答:$_SERVSR REQUEST_U$_SERVER REMOTE_ADDR22. 求兩個日期的差數,例如 2007-2-5 2007-3-6 的日期差數答:(strtotime( 2007-3- 6)-strtotime( 2007-2- 5 )/3600*2423. 表中有A B C三列,用SQL語句實現:當A列大于B列時選擇A列否則選擇B 列

12、,當B列大于C列時選擇B列否則選擇C列。答: select case when AB then A else B end,case whe n BC the n B else C end From test24. 請簡述項目中優(yōu)化sql語句執(zhí)行效率的方法,從哪些方面,sql語句性能如何 分析?1)選擇最有效率的表名順序(2) WHER子句中的連接順序(3) SELECTF句中避免使用*(4) 用 Where子句替換HAVING?句(5) 通過內部函數提高SQL效率(6) 避免在索引列上使用計算。(7) 提高GROUPY語句的效率,可以通過將不需要的記錄在 GROUBY之前過 濾掉。25. my

13、sql_fetch_row()和 mysql_fetch_array()有什么分別?mysql_fetch_row()把數據庫的一列儲存在一個以零為基數的陣列中,第一欄在陣列的索引0 ,第二欄在索引1 ,如此類推。mysql_fetch_assoc()把數據庫的一列儲存在一個關聯陣列中,陣列的索引就是欄位名稱,例如我的數據庫查詢送 回“first_name ”、“l(fā)ast_name”、“email ”三個欄位,陣列的索引便是“first_name ”、 “l(fā)ast_name ”和“ email ”。mysql_fetch_array()可以同時送回 mysql_fetch_row() 和 my

14、sql_fetch_assoc() 的值。26. 下面的代碼用來做什么?請解釋。$date=08/26/2003;pri nt ereg_replace(0-9+)/(0-9+)/(0-9+),2/1/3,$date);這是把一個日期從 MM/DD/YYYY勺格式轉為DD/MM/YYYY格式。我的一個好朋友 告訴我可以把這個正規(guī)表達式拆解為以下的語句, 對于如此簡單的表示是來說其 實無須拆解,純粹為了解說的方便:/ 對應一個或更多0-9,后面緊隨一個斜號$regExpression = (0-9+)/;/ 應一個或更多0-9 ,后面緊隨另一個斜號$regExpression .= (0-9+)

15、/;/ 再 次對應一個或更多 0-9$regExpression .二(0-9+);至于 2/1/3 則是 用來對應括號,第一個括號對的是月份,27. GD函式庫用來做什么?答:這個函式庫讓你處理和顯示各式格式的圖檔,它的另一個常見用途是制作所 圖檔。GD以外的另一個選擇是ImageMagick,但這個函式庫并不內建于 PHP之 中,必須由系統(tǒng)管理員安裝在伺服器上28. 請舉例說明在你的開發(fā)過程中用什么方法來加快頁面的加載速度答:要用到服務器資源時才打開,及時關閉服務器資源,數據庫添加索引, 頁面可生成靜態(tài),圖片等大文件單獨服務器。使用代碼優(yōu)化工具啦29. 防止SQL注射漏洞一般用addslashes 函數。30. PHP中傳值和傳引用、傳地址的區(qū)別是什么?答:傳值是把實參的值賦值給行參那么對行參的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論