php面試題目及答案

時間:2024-07-29 23:17:22 學人智庫 我要投稿
  • 相關推薦

php面試題目及答案

1.在PHP中,當前腳本的名稱(不包括路徑和查詢字符串)記錄在預定義變量(1)中;而鏈接到當前頁面的URL記錄在預定義變量(2)中。

php面試題目及答案

答: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.寫出一個正則表達式,過慮網頁上的所有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() 函數調用之前調用:

// 保存一天

$lifeTime = 24 * 3600;

session_set_cookie_params($lifeTime);

session_start();

$_SESSION["admin"] = true;

?>

20. 請寫一個函數,實現以下功能: 字符串“open_door” 轉換成 “OpenDoor”、”make_by_id” 轉換成 ”MakeById”。30.請舉例說明在你的開發過程中用什么方法來加快頁面的加載速度

A.生成靜態HTML

B.生成xml

C.可不用數據庫的盡量不用數據庫把變量參數存于文本.

D.用ZEND加速

答:

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.請舉例說明在你的開發過程中用什么方法來加快頁面的加載速度

答:要用到服務器資源時才打開,及時關閉服務器資源,數據庫添加索引,

[php面試題目及答案]

【php面試題目及答案】相關文章:

PHP面試題與答案07-22

[PHP技術]騰訊PHP實習生筆試題目及答案解析10-13

百度php面試題目08-29

常用php面試題及答案10-18

php常用面試題及答案08-27

面試題目及答案10-05

最新關于精選php面試題及答案08-25

Hadoop面試題目及答案06-02

小升初面試筆試題目及答案05-29

上海小升初面試題目及答案10-01

国产v亚洲v天堂无码网站,综合亚洲欧美日韩一区二区,精品一级毛片A久久久久,欧美一级待黄大片视频
中文字幕日韩精品欧美一区久久 | 亚洲精国产一区二区三区 | 亚洲国产精品久久久天堂麻豆 | 亚洲国产二区综合 | 中文字幕在线手机一区 | 亚洲综合在线另类第一页 |