php面試題和答案

2021-03-03 23:20:16 字數 4398 閱讀 6793

1、用php列印出前一天的時間格式是2006-5-10 22:21:21(2分)

$a = date("y-m-d h:i:s", strtotime("-1 day"));

print_r($a);

2、echo(),print(),print_r()的區別(3分)

echo 和print不是乙個函式,是乙個語言結構

int print(string $arg), 只有乙個引數

echo arg1,arg2; 可以輸出多個引數,返回void

echo和print只能列印出string,不能列印出結構

print_r能列印出結構

比如 $arr = array("key"=>"value");

print_r($arr);

3、能夠使html和php分離開使用的模板(1分)

**arty,phplib

4、使用哪些工具進行版本控制?(1分)

svn,git,cvs

5、如何實現字串翻轉?(3分)

英文:strrev($a)

中文或其他文字:

中文:gb2312, **是使用gb2312編碼

<?php

function reverse($str)

return implode("", array_reverse($arr));

}print_r(reverse("你好"));

6、優化mysql資料庫的方法。(4分,多寫多得)

語句方面:

1 使用索引,增加查詢效率

2 優化查詢語句,提高索引命中率

資料庫涉及方面:

1 構造分庫分表,提高資料庫的儲存和擴充套件能力

2 根據需要使用不同的儲存引擎

7、php的意思(送1分)

超級文字預處理語言

hypertext preprocessor

8、mysql取得當前時間的函式是?,格式化日期的函式是(2分)

current_timestamp()

date_format()

select date_format("2011-11-21 10:10:10", "%y-%m-%d");

9、實現中文字串擷取無亂碼的方法。(3分)

mb_substr($str, 1, 1, "gb2312");

10、您是否用過版本控制軟體? 如果有您用的版本控制軟體的名字是?(1分)

svngit

11、您是否用過模板引擎? 如果有您用的模板引擎的名字是?(1分)

**arty

12、請簡單闡述您最得意的開發之作(4分)

***13、對於大流量的**,您採用什麼樣的方法來解決訪問量問題?(4分)

1 有效使用快取,增加快取命中率

2 使用負載均衡

3 對靜態檔案使用cdn進行儲存和加速

4 想法減少資料庫的使用

5 檢視出現統計的瓶頸在**

14、用php寫出顯示客戶端ip與伺服器ip的**1分)

$_server["remote_addr"]

$_server["server_addr"]

15、語句include和require的區別是什麼?為避免多次包含同一檔案,可用(?)語句代替它們? (2分)

在失敗的時候:

include產生乙個warning,而require產生直接產生錯誤中斷

require在執行前載入

include在執行時載入

require_once

include_once

16、如何修改session的生存時間(1分).

session_set_cookie_params

17、有乙個網頁位址, 比如php研究室主頁: 如何得到它的內容?($1分)

file_get_contents

curl

18、在http 1.0中,狀態碼401的含義是(?);如果返回「找不到檔案」的提示,則可用 header 函式,其語句為(?);(2分)

未授權header("http/1.0 404 not found");

fast cgi中:

header("status: 404 not found");

19、在php中,heredoc是一種特殊的字串,它的結束標誌必須?(1分)

成對出現

$a =

eod;

20、談談asp,php,jsp的優缺點(1分)

asp是需要依賴iis,是微軟開發的語言

php和jsp可以依賴apache或者 nginx等其他伺服器

21、談談對mvc的認識(1分)

model : 資料結構層

view :展現

control : 接收和判斷處理輸入

22、寫出發貼數最多的十個人名字的sql,利用下表:members(id,username,posts,pass,email)(2分)

select top 10 id,username from members order by posts desc

23. 請說明php中傳值與傳引用的區別。什麼時候傳值什麼時候傳引用?(2分)

&表示傳引用

函式中引數傳引用會將引數進行改變

一般在輸出引數有多個的時候可以考慮使用引用

24. 在php中error_reporting這個函式有什麼作用? (1分)

設定error的展示級別

25. 請寫乙個函式驗證電子郵件的格式是否正確 (2分)

$str = "";

regex="([az09\.]+)@([\daz\.]+)\.([az\.]2,6)" ; //正則

return preg_match(regex,str)

26. 簡述如何得到當前執行指令碼路徑,包括所得到引數。(2分)

$argc --獲取引數數量

$argv --獲取引數列表

27.如何修改session的生存時間. (1分)

session_set_cookie_params

28、js表單彈出對話方塊函式是?獲得輸入焦點函式是? (2分)

alert()

confirm()

promopt()

focus()

29、js的轉向函式是?怎麼引入乙個外部js檔案?(2分)

window.location.href="#"

30、foo()和@foo()之間有什麼區別?(1分)

@代表所有warning忽略

31、如何宣告乙個名為」myclass」的沒有方法和屬性的類? (1分)

class myclass

32、如何例項化乙個名為」myclass」的物件?(1分)

$myclass = new myclass();

33、你如何訪問和設定乙個類的屬性? (2分)

<?php

class a

$a = new a();

n=a->name;

print_r($n);

34、mysql_fetch_row() 和mysql_fetch_array之間有什麼區別? (1分)

mysql_fetch_array() 是 mysql_fetch_row() 的擴充套件版本。除了將資料以數字索引方式儲存在陣列中之外,還可以將資料作為關聯索引儲存,用欄位名作為鍵名。

<?php

mysql_connect("localhost", "mysql_user", "mysql_password") or

die("could not connect: " . mysql_error());

mysql_select_db("mydb");

$result = mysql_query("select id, name from mytable");

while (row=mysqlfetcharray(result, mysql_assoc))

mysql_free_result($result);

35、gd庫是做什麼用的? (1分)

動態的開放的**處理庫

36、指出一些在php輸入一段html**的辦法。(1分)

echo ""

echo <

eod;

37、下面哪個函式可以開啟乙個檔案,以對檔案進行讀和寫操作?(1分) c

(a) fget() (b) file_open() (c) fopen() (d) open_file()

38、下面哪個選項沒有將 john 新增到users 陣列中? (1分) b

(a) $users = 『john』;

(b) array_add($users,』john』);

(c) array_push($users,『john』);

(d) $users ||= 『john』;

39、下面的程式會輸入是否?(1分) 10

$num = 10;

php面試題和答案整理

1.以下哪一句不會把 john 新增到 users 陣列?users john 成功把 john 新增到陣列 users。array add users,john 函式 array add 無定義。array push users,john 成功把 john 新增到陣列 users。users jo...

2019php面試題和答案整理

1.以下哪一句不會把 john 新增到 users 陣列?users john 成功把 john 新增到陣列 users。array add users,john 函式 array add 無定義。array push users,john 成功把 john 新增到陣列 users。users jo...

新浪php面試題

網上轉的一篇文章,不知道真的是不是sina的,題目很普通。無論是不是真的新浪面試題,對於正在求職的同行來說,也算可以練練手的了。這些面試題都帶了答案,看著還行 1.echo count abc 輸出什麼?答 1 count 計算陣列中的單元數目或物件中的屬性個數 int count mixed va...