1.在PHP中,當前指令碼的名稱(不包括路徑和查詢字串)記錄在預定義變數(1)中;而連結到當前頁面的URL記錄在預定義變數(2)中。 複製代碼 代碼如下: 答:echo $_SERVER['PHP_SELF']; echo $_SERVER["HTTP_REFERER"];
2.執行程式段將輸出(3)。 複製代碼 代碼如下: 答:0
3.在HTTP 1.0中,狀態代碼 401 的含義是(4);如果返回“找不到檔案”的提示,則可用 header 函數,其語句為(5)。 複製代碼 代碼如下: 答:(4)未授權 (5) header("HTTP/1.0 404 Not Found");
4.數組函數 arsort 的作用是(6);語句 error_reporting(2047)的作用是(7)。 複製代碼 代碼如下: 答:(6)對數組進行逆向排序並保持索引關係 (7)All errors and warnings
5.寫出一個Regex,過慮網頁上的所有JS/VBS指令碼(即把標記及其內容都去掉):(9)。 複製代碼 代碼如下: 答:/<[^>].*?>.*?<\/>/si
6.以Apache模組的方式安裝PHP,在檔案http.conf中首先要用語句(10)動態裝載PHP模組, 然後再用語句(11)使得Apache把所有副檔名為php的檔案都作為PHP指令碼處理。 複製代碼 代碼如下: 答:(10) LoadModule php5_module "D:/xampp/apache/bin/php5apache2.dll" (11) AddType application/x-httpd-php-source .phps AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml
7.語句 include 和 require 都能把另外一個檔案包含到當前檔案中,它們的區別是(12);為了避免多次包含同一檔案,可以用語句(13)來代替它們。 複製代碼 代碼如下: 答:(12) 發生異常時include產生警告require產生致命錯誤 (13) require_once()/include_once()
8.類的屬性可以序列化後儲存到 session 中,從而以後可以恢複整個類,這要用到的函數是(14)。 複製代碼 代碼如下: 答:serialize() /unserialize()
9.一個函數的參數不能是對變數的引用,除非在php.ini中把(15)設為on. 複製代碼 代碼如下: 答:allow_call_time_pass_reference
10.SQL 中LEFT JOIN的含義是(16)。 如果 tbl_user記錄了學生的姓名(name)和學號(ID), tbl_score記錄了學生(有的學生考試以後被開除了,沒有其記錄)的學號(ID)和考試成績(score)以及考試科目(subject), 要想列印出各個學生姓名及對應的的各科總成績,則可以用SQL語句(17)。 複製代碼 代碼如下: 答:(16) 自然左外串連 (17) select name , count(score) as sum_score from tbl_user left join tbl_score on tbl_user.ID=tbl_score.ID group by tbl_user.ID
11..在PHP中,heredoc是一種特殊的字串,它的結束標誌必須(18)。 複製代碼 代碼如下: 答:結束標識符所在的行不能包含任何其它字元除";"
12.用PHP列印出前一天的時間格式是2006-5-10 22:21:21 複製代碼 代碼如下: 答:echo date('Y-m-d H:i:s', strtotime('-1 day'));
13.echo(),print(),print_r()的區別 複製代碼 代碼如下: 答:echo是語言結構,無傳回值;print功能和echo基本相同,不同的是print是函數,有傳回值;print_r是遞迴列印,用於輸出數組對象
14.如何?字串翻轉? 複製代碼 代碼如下: 答:.用strrev函數唄,不準用PHP內建的就自己寫: strrev($str) { $len=strlen($str); $newstr = ''; for($i=$len;$i>=0;$i--) { $newstr .= $str{$i}; } return $newstr; }
15.實現中文字串截取無亂碼的方法。 複製代碼 代碼如下: 答:mb_substr()
16.使用php寫一段簡單查詢,查出所有姓名為“張三”的內容並列印出來 表名User Name Tel Content Date 張三 13333663366 大專畢業 2006-10-11 張三 13612312331 本科畢業 2006-10-15 張四 021-55665566 中專畢業 2006-10-15 複製代碼 代碼如下: 答:SELECT Name,Tel,Content,Date FROM User WHERE Name='張三'
17.如何使用下面的類,並解釋下面什麼意思? class test { Get_test($num) { $num=md5(md5($num)."En"); return $num; } } 答:用法: 複製代碼 代碼如下: $get_test = new test(); $result = $get_test->Get_test(2);
將$num變數進行兩次md5後返回,第2次的md5中的參數,在第一次md5($num)後多加了En 18.使用五種以上方式擷取一個檔案的副檔名 要求: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(explode('.', $file_name)); } 4) get_ext4($file_name) { $p = pathinfo($file_name); return $p['extension']; } 5) get_ext5($file_name) { return strrev(substr(strrev($file_name), 0, strpos(strrev($file_name), '.'))); }
19.如何修改SESSION的存留時間 這個函式庫讓你處理和顯示各式格式的圖檔,它的另一個常見用途是製作所圖檔。GD 以外的另一個選擇是 ImageMagick,但這個函式庫並不內建於 PHP 之中,必須由系統管理員安裝在伺服器上答:其實 Session 還提供了一個函數 session_set_cookie_params(); 來設定 Session 的生存期的,該函數必須在 session_start() 函數調用之前調用: <?php // 儲存一天 $lifeTime = 24 * 3600; session_set_cookie_params($lifeTime); session_start(); $_SESSION["admin"] = true; ?> 20. 請寫一個函數,實現以下功能: 字串“open_door” 轉換成 “OpenDoor”、”make_by_id” 轉換成 ”MakeById”。 複製代碼 代碼如下: 答: Function test($str){ $arr1=explode('_',$str); //$arr2=array_walk($arr1,ucwords( )); $str = implode(' ',$arr1); return ucwords($str); } $aa='open_door'; echo test($aa); ?>
21. 如何用php的環境變數得到一個網頁地址的內容?ip地址又要怎樣得到? 複製代碼 代碼如下: 答:$_SERVSR[‘REQUEST_URI'] $_SERVER[‘REMOTE_ADDR']
22.求兩個日期的差數,例如2007-2-5 ~ 2007-3-6 的日期差數 複製代碼 代碼如下: 答:(strtotime(‘2007-3-6')-strtotime(‘2007-2-5'))/3600*24
23.表中有A B C三列,用SQL語句實現:當A列大於B列時選擇A列否則選擇B列,當B列大於C列時選擇B列否則選擇C列。 複製代碼 代碼如下: 答:select case when A>B then A else B end, case when B>C then B else C end From test
24.請簡述項目中最佳化sql語句執行效率的方法,從哪些方面,sql語句效能如何分析? 複製代碼 代碼如下: 答:(1)選擇最有效率的表名順序 (2)WHERE子句中的串連順序 (3)SELECT子句中避免使用‘*' (4)用Where子句替換HAVING子句 (5)通過內建函式提高SQL效率 (6)避免在索引列上使用計算。 (7)提高GROUP BY 語句的效率, 可以通過將不需要的記錄在GROUP BY 之前過濾掉。
25.mysql_fetch_row() 和 mysql_fetch_array() 有什麼分別? 複製代碼 代碼如下: mysql_fetch_row() 把資料庫的一列儲存在一個以零為基數的陣列中,第一欄在陣列的索引 0,第二欄在索引 1,如此類推。mysql_fetch_assoc() 把資料庫的一列儲存在一個關聯陣列中,陣列的索引就是欄位名稱,例如我的資料庫查詢送回“first_name”、“last_name”、 “email”三個欄位,陣列的索引便是“first_name”、“last_name”和“email”。mysql_fetch_array() 可以同時送回 mysql_fetch_row() 和 mysql_fetch_assoc() 的值。
26.下面的代碼用來做什嗎?請解釋。 $date='08/26/2003';print ereg_replace("([0-9]+)/([0-9]+)/([0-9]+)","\\2/\\1/\\3",$date); 複製代碼 代碼如下: 這是把一個日期從 MM/DD/YYYY 的格式轉為 DD/MM/YYYY 格式。我的一個好朋友告訴我可以把這個正規運算式拆解為以下的語句,對於如此簡單的表示是來說其實無須拆解,純粹為瞭解說的方便: // 對應一個或更多 0-9,後面緊隨一個斜號$regExpression = "([0-9]+)/";// 應一個或更多 0-9,後面緊隨另一個斜號$regExpression .= "([0-9]+)/";// 再次對應一個或更多 0-9$regExpression .= "([0-9]+)";至於 \\2/\\1/\\3 則是用來對應括弧,第一個括弧對的是月份,
27.GD 函式庫用來做什嗎? 複製代碼 代碼如下: 答:這個函式庫讓你處理和顯示各式格式的圖檔,它的另一個常見用途是製作所圖檔。GD 以外的另一個選擇是 ImageMagick,但這個函式庫並不內建於 PHP 之中,必須由系統管理員安裝在伺服器上
28.請舉例說明在你的開發過程中用什麼方法來加快頁面的載入速度 複製代碼 代碼如下: 答:要用到伺服器資源時才開啟,及時關閉伺服器資源,資料庫添加索引,頁面可產生靜態,圖片等大檔案單獨伺服器。使用代碼最佳化工具啦
29.防止SQL注射漏洞一般用__addslashes___函數。 30.PHP中傳值和傳引用、傳地址的區別是什嗎? 複製代碼 代碼如下: 答:傳值是把實參的值賦值給行參 那麼對行參的修改,不會影響實參的值 傳地址 是傳值的一種特殊方式,只是他傳遞的是地址,不是普通的如int 那麼傳地址以後,實參和行參都指向同一個對象
31.如何通過javascript判斷一個視窗是否已經被屏蔽 複製代碼 代碼如下: 答:擷取open()的傳回值,如果是null,就是屏蔽了
33.對於大流量的網站,您採用什麼樣的方法來解決訪問量問題 複製代碼 代碼如下: 答:首先,確認伺服器硬體是否足夠支援當前的流量 其次,最佳化資料庫訪問。 第三,禁止外部的盜鏈。 第四,控制大檔案的下載。 第五,使用不同主機分流主要流量 第六,使用流量分析統計軟體
以上所述就是本文的全部內容了,希望能夠對大家學習php有所協助。 |