php面試題
PHP即“超文本預(yù)處理器”,是一種通用開源腳本語言。PHP是在服務(wù)器端執(zhí)行的腳本語言,與C語言類似,是常用的網(wǎng)站編程語言。PHP獨特的語法混合了C、Java、Perl以及 PHP 自創(chuàng)的語法。利于學(xué)習(xí),使用廣泛,主要適用于Web開發(fā)領(lǐng)域。
php面試題1
面試題1
1、用PHP打印出前一天的時間格式是20xx-5-1022:21:21
2、echo(),print(),print_r()的區(qū)別
3、能夠使HTML和PHP分離開使用的模板
4、如何實現(xiàn)PHP、JSP交互?
5、使用哪些工具進行版本控制?
6、如何實現(xiàn)字符串翻轉(zhuǎn)?
7、優(yōu)化MYSQL數(shù)據(jù)庫的方法。
8、談?wù)勈聞?wù)處理
9、apache+mysql+php實現(xiàn)最大負載的方法
10、實現(xiàn)中文字串截取無亂碼的方法。
面試題2
var$empty=';
var$null=NULL;
var$bool=FALSE;
var$notSet;
var$array=array();
1.
$a="hello";
$b=&$a;
unset($b);
$b="world";
whatis$a?
2.
$a=1;
$x=&$a;
$b=$a++;
whatis$b?
3.
$x=empty($array);
whatis$x?trueorfalse
4.您是否用過版本控制軟件?如果有您用的版本控制軟件的名字是?
5.您是否用過模板引擎?如果有您用的模板引擎的名字是?
6.請簡單闡述您最得意的開發(fā)之作.
7.對于大流量的網(wǎng)站,您采用什么樣的方法來解決訪問量問題?
8.用PHP寫出顯示客戶端IP與服務(wù)器IP的代碼:
面試題3
一、PHP/MySQL編程
1)某內(nèi)容管理系統(tǒng)中,表message有如下字段
id文章id
title文章標(biāo)題
content文章內(nèi)容
category_id文章分類id
hits點擊量
創(chuàng)建上表,寫出MySQL語句
2)同樣上述內(nèi)容管理系統(tǒng):表comment記錄用戶回復(fù)內(nèi)容,字段如下
comment_id回復(fù)id
id文章id,關(guān)聯(lián)message表中的id
comment_content回復(fù)內(nèi)容
現(xiàn)通過查詢數(shù)據(jù)庫需要得到以下格式的文章標(biāo)題列表,并按照回復(fù)數(shù)量排序,回復(fù)最高的排在最前面
文章id文章標(biāo)題點擊量回復(fù)數(shù)量
用一個SQL語句完成上述查詢,如果文章沒有回復(fù)則回復(fù)數(shù)量顯示為0
3)上述內(nèi)容管理系統(tǒng),表category保存分類信息,字段如下
category_idint(4)notnullauto_increment;
categroy_namevar40)notnull;
用戶輸入文章時,通過選擇下拉菜單選定文章分類
寫出如何實現(xiàn)這個下拉菜單
二、PHP文件操作
1)
上述內(nèi)容管理系統(tǒng):用戶提交內(nèi)容后,系統(tǒng)生成靜態(tài)HTML頁面;寫出實現(xiàn)的基本思路
2)簡單描述用戶修改以發(fā)布內(nèi)容的實現(xiàn)流程和基本思路
三、PHP程序
1)寫出以下程序的輸出結(jié)果
<?
$b=201;
$c=40;
$a=$b>$c?4:5;
echo$a;
?>
2)寫出以下程序的輸出結(jié)果
<?
$str="cd";
$$str="hotdog";
$$str.="ok";
echo$cd;
?>
面試題4
一.簡答題
1.請說明php中傳值與傳引用的區(qū)別。什么時候傳值什么時候傳引用?
2.在PHP中error_reporting這個函數(shù)有什么作用?
3.請寫一個函數(shù)驗證電子郵件的格式是否正確
4.如何修改SESSION的生存時間.
5.有一個一維數(shù)組,里面存儲整形數(shù)據(jù),請寫一個函數(shù),將他們按從大到小的順序排列。要求執(zhí)行效率高。并說明如何改善執(zhí)行效率。(該函數(shù)必須自己實現(xiàn),不能使用php函數(shù))
6.請舉例說明在你的開發(fā)過程中用什么方法來加快頁面的加載速度。
二.數(shù)據(jù)庫設(shè)計題:
請設(shè)計一套圖書館借書管理系統(tǒng)的數(shù)據(jù)庫表結(jié)構(gòu);可以記錄基本的用戶信息、圖書信息、借還書信息;數(shù)據(jù)表的個數(shù)不超過6個;請畫表格描述表結(jié)構(gòu)(需要說明每個字段的字段名、字段類型、字段含義描述);
在數(shù)據(jù)庫設(shè)計中應(yīng):
1.保證每個用戶的唯一性;
2.保證每種圖書的唯一性;每種圖書對應(yīng)不等本數(shù)的多本圖書;保證每本圖書的唯一性;
3.借書信息表中,應(yīng)同時考慮借書行為與還書行為,考慮借書期限;
4.保證借書信息表與用戶表、圖書信息表之間的參照完整性;
5.限制每個用戶最大可借書的本數(shù)
6.若有新用戶注冊或新書入庫,保證自動生成其唯一性標(biāo)識
7.為以下的一系列報表需求提供支持:
。o特定說明,不需編寫實現(xiàn)語句,而需在數(shù)據(jù)庫設(shè)計中,保證這些報表可以用最多一條SQL語句實現(xiàn))
a)日統(tǒng)計報表:當(dāng)日借書本數(shù)、當(dāng)日還書本數(shù)報表;
b)實時報表:
i.當(dāng)前每種書的借出本數(shù)、可借本數(shù);
ii.當(dāng)前系統(tǒng)中所有超期圖書、用戶的列表及其超期天數(shù)
iii.當(dāng)前系統(tǒng)中所有用戶借書的本數(shù),分用戶列出(包括沒有借書行為的用戶);請編寫實現(xiàn)此需求的SQL語句:
數(shù)據(jù)庫應(yīng)用:
請撰寫一系列的SQL語句,分別描述完整的借書行為與還書行為;并保證這一系列的SQL語句的執(zhí)行完整性
下題是測驗?zāi)芰χ钪匾獪y試,如不能完成我們將無法給出評判結(jié)果!所以請寫出詳細的回答,并保證答案是可以執(zhí)行的程序。在兩日內(nèi)將結(jié)果通過電子郵件寄到hr@88keke.com郵箱
結(jié)合第二題中你的設(shè)計,用一種數(shù)據(jù)庫實現(xiàn),要求使用三層結(jié)構(gòu)或者多層結(jié)構(gòu),要求采用面向?qū)ο蟮乃枷脒M行編程,有可能的話,設(shè)計一套模板機制來實現(xiàn)之。
功能:列出當(dāng)前借出圖書的情況,按日期排列
編號用戶姓名書名書的編號借出日期
1.張進大染坊125765872004-9-1
2.劉興西游記321310982004-9-2
……
面試題5
1.在PHP中,當(dāng)前腳本的名稱(不包括路徑和查詢字符串)記錄在預(yù)定義變量(1)中;而鏈接到當(dāng)前頁面的URL記錄在預(yù)定義變量(2)中。
2.執(zhí)行程序段將輸出(3)。
3.在HTTP1.0中,狀態(tài)碼401的含義是(4);如果返回“找不到文件”的提示,則可用header函數(shù),其語句為(5)。
4.數(shù)組函數(shù)arsort的作用是(6);語句error_reporting(20xx)的作用是(7)。
5.PEAR中的數(shù)據(jù)庫連接字符串格式是(8)。
6.寫出一個正則表達式,過慮網(wǎng)頁上的所有JS/VBS腳本(即把script標(biāo)記及其內(nèi)容都去掉):(9)。
7.以Apache模塊的方式安裝PHP,在文件http.conf中首先要用語句(10)動態(tài)裝載PHP模塊,然后再用語句(11)使得Apache把所有擴展名為php的文件都作為PHP腳本處理。
8.語句include和require都能把另外一個文件包含到當(dāng)前文件中,它們的區(qū)別是(12);為了避免多次包含同一文件,可以用語句(13)來代替它們。
9.類的屬性可以序列化后保存到session中,從而以后可以恢復(fù)整個類,這要用到的函數(shù)是(14)。
10.一個函數(shù)的參數(shù)不能是對變量的引用,除非在php.ini中把(15)設(shè)為on.
11.SQL中LEFTJOIN的含義是(16)。如果tbl_user記錄了學(xué)生的姓名(name)和學(xué)號(ID),tbl_score記錄了學(xué)生(有的學(xué)生考試以后被開除了,沒有其記錄)的學(xué)號(ID)和考試成績(score)以及考試科目(subject),要想打印出各個學(xué)生姓名及對應(yīng)的的各科總成績,則可以用SQL語句(17)。
12.在PHP中,heredoc是一種特殊的字符串,它的結(jié)束標(biāo)志必須(18)。
13.寫一個函數(shù),能夠遍歷一個文件夾下的所有文件和子文件夾。
14.簡述論壇中無限分類的實現(xiàn)原理。
15.設(shè)計一個網(wǎng)頁,使得打開它時彈出一個全屏的窗口,該窗口中有一個文本框和一個按鈕。用戶在文本框中輸入信息后點擊按鈕就可以把窗口關(guān)閉,而輸入的信息卻在主網(wǎng)頁中顯示。
面試題6
有一表menu(mainmenu,submenu,url),請用遞歸法寫出一樹形菜單,將所有的menu列出來。
面試題7
1-給你三個數(shù),寫程序求出其最大值。
2-談?wù)刟sp,php,jsp的優(yōu)缺點
3-談?wù)剬vc的認識
4-寫出發(fā)貼數(shù)最多的十個人名字的SQL,利用下表:
members(id,username,posts,pass,email)
面試題8
1-如何通過javascript判斷一個窗口是否已經(jīng)被屏蔽。
2-寫出session的運行機制
3-有一數(shù)組$a=array(4,3,8,9,2);請將其重新排序,按從小到大的順序列出。
4-防止SQL注射漏洞一般用_____函數(shù)。
5-查詢在線人數(shù),并能處理異常掉線的SQL
php面試題2
PHP面試題:
簡答題:
1. 簡述Linux下安裝PHP的過程?
2. 簡述Linux下安裝Mysql的過程?
3. 簡述Linux下安裝apache的過程?
4. 監(jiān)視一個日志文件a.log 的最新內(nèi)容?
5. 查看當(dāng)前服務(wù)器的HTTP連接有哪些?
6. 說說Linux下的find命令和grep命令的區(qū)別?
7. 如何實現(xiàn)每天0點鐘重新啟動服務(wù)器?
8. 請寫出5個常用的unix操作命令?
9. rm -rf * 是什么意思,其中 f 有什么作用?
10. Linux壓縮文件和解壓文件的命令?
11. Linux的目錄進行遍歷,編寫shell腳本?
12. apache默認使用進程管理還是線程管理?如何判斷并設(shè)置最大連接數(shù)?
13. 當(dāng)前目錄下有一個文件為 showme.sh , 如何修改文件,將其指定為使用 /bin/bash 運
行,如何修改其權(quán)限為所有用戶可讀寫,所有用戶可執(zhí)行?
14. 當(dāng)前目錄下有一個文件為 showme.sh,如何修改其所有人為root?
15. 在linux 請寫出一種自動定時備份某一個文件的方法和具體實施流程,要求每天凌晨3點的時候備份一次。
php面試題3
精選php面試題及答案
一、基礎(chǔ)題
1. 寫出如下程序的輸出結(jié)果
<?php $str1 = null;
$str2 = false;
echo $str1==$str2 ? 相等 : 不相等;
$str3 = ;
$str4 = 0;
echo $str3==$str4 ? 相等 : 不相等;
$str5 = 0;
$str6 = 0;
echo $str5===$str6 ? 相等 : 不相等;?>
2. 寫出如下程序的輸出結(jié)果
<?php $a1 = null;
$a2 = false;
$a3 = 0;
$a4 = ;
$a5 = 0;
$a6 = null;
$a7 = array();
$a8 = array(array());
echo empty($a1) ? true : false;
echo empty($a2) ? true : false;
echo empty($a3) ? true : false;
echo empty($a4) ? true : false;
echo empty($a5) ? true : false;
echo empty($a6) ? true : false;
echo empty($a7) ? true : false;
echo empty($a8) ? true : false;?>
3. 寫出如下程序的輸出結(jié)果
<?php $test = aaaaaa;
$abc = & $test;
unset($test);
echo $abc;?>
4. 寫出如下程序的輸出結(jié)果
<?php $count = 5;
function get_count(){
static $count = 0;
return $count++;
}
echo $count;
++$count;
echo get_count();
echo get_count();?>
5. 寫出如下程序的輸出結(jié)果
<?php $GLOBALS[var1] = 5;
$var2 = 1;
function get_value(){
global $var2;
$var1 = 0;
return $var2++;
}
get_value();
echo $var1;
echo $var2;?>
6. 寫出如下程序的輸出結(jié)果
<?php function get_arr($arr){
unset($arr[0]);
}
$arr1 = array(1, 2);
$arr2 = array(1, 2);
get_arr(&$arr1);
get_arr($arr2);
echo count($arr1);
echo count($arr2);?>
7. 使用五種以上方式獲取一個文件的擴展名
要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,
必須使用PHP自帶的處理函數(shù)進行處理,方法不能明顯重復(fù),可以封裝成函數(shù),比如 get_ext1($file_name), get_ext2($file_name)
二、算法題
1. 使用PHP描述冒泡排序和快速排序算法,對象可以是一個數(shù)組
2. 使用PHP描述順序查找和二分查找(也叫做折半查找)算法,順序查找必須考慮效率,對象可以是一個有序數(shù)組
3. 寫一個二維數(shù)組排序算法函數(shù),能夠具有通用性,可以調(diào)用php內(nèi)置函數(shù)【答案】
。ㄒ韵麓鸢覆灰欢ㄊ亲詈玫模皇且粋簡單的參考)
騰訊php面試題
php程序員一般會遇到的面試題:
1. 基本知識點
HTTP協(xié)議中幾個狀態(tài)碼的含義:503 500 401 200 301 302
Include require include_once require_once 的區(qū)別.
PHP/Mysql中幾個版本的進化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改進等。
HEREDOC介紹
寫出一些php魔幻方法;
一些編譯php時的configure 參數(shù)
向php傳入?yún)?shù)的兩種方法。
(mysql)請寫出數(shù)據(jù)類型(int char varchar datetime text)的意思; 請問varchar和char有什么區(qū)別;
error_reporting 等調(diào)試函數(shù)使用
您是否用過版本控制軟件? 如果有您用的版本控制軟件的名字是?
posix和perl標(biāo)準(zhǔn)的正則表達式區(qū)別;
Safe_mode 打開后哪些地方受限.
寫代碼來解決多進程/線程同時讀寫一個文件的問題。
寫一段上傳文件的代碼。
Mysql 的存儲引擎,myisam和innodb的區(qū)別。
2. web 架構(gòu),安全,項目經(jīng)驗
介紹xdebug,apc,eAccelerator,Xcache,Zend opt的使用經(jīng)驗。
使用mod_rewrite,在服務(wù)器上沒有/archivers/567.html這個物理文件時,重定向到index.php?id=567 ,請先打開mod_rewrite.
關(guān)于PHP面試題的分享
1、 用PHP打印出前一天的時間,格式是2014-6-07 00:25:10
2、 簡述echo(),print(),print_r()的區(qū)別
3、 能夠使HTML和PHP分離開使用的模板是什么?
4、 使用哪些工具進行版本控制?
5、 如何實現(xiàn)字符串翻轉(zhuǎn)?
6、 優(yōu)化mysql數(shù)據(jù)庫的方法。
7、 Php的意思
8、 Mysql取得當(dāng)前時間的函數(shù)是?格式化日期的函數(shù)是?
9、 實現(xiàn)中文字串截取無亂碼的方法
10、 已知$a = "hello";$b = &$a;unset($b);$b = "world";問$a是多少,$b是多少?
11、 已知$array = array();$x = empty($array);問$x是什么?什么樣的內(nèi)容為空?
12、 用PHP寫出顯示客戶端IP與服務(wù)器IP的代碼
13、 1echo 8%(-2)的結(jié)果值是多少?
14、 有一數(shù)組 $a=array(3,2,4,9,8);請將其重新排序,按從小到大的順序列出。
15、 如何聲明一個名為”myclass”的沒有方法和屬性的類?如何實例化一個名
為”myclass”的對象?
16、 如何訪問和設(shè)置一個類的屬性?
17、 如何使用下面的類,并解釋下面什么意思?
class Mymd5
{
function get_md5($str)
php面試題?
1.以下哪一句不會把 John 新增到 users 陣列?
$users[] = john;
成功把 John 新增到陣列 users。
array_add($users,’john’);
函式 array_add() 無定義。
array_push($users,‘john’);
成功把 John 新增到陣列 users。
$users ||= john;
語法錯誤。
2.sort()、assort()、和 ksort() 有什么分別?它們分別在什么情況下使用?
sort()
根據(jù)陣列中元素的值,以英文字母順序排序,索引鍵會由 0 到 n-1 重新編號。主要是當(dāng)陣列索引鍵的值無關(guān)疼癢時用來把陣列排序。
assort()
PHP 沒有 assort() 函式,所以可能是 asort() 的筆誤。
asort()
與 sort() 一樣把陣列的元素按英文字母順序來排列,不同的是所有索引鍵都獲得保留,特別適合替聯(lián)想陣列排序。
ksort()
根據(jù)陣列中索引鍵的值,以英文字母順序排序,特別適合用于希望把索引鍵排序的`聯(lián)想陣列。
3.以下的代碼會產(chǎn)生什么?為什么?
$num =10;
function multiply(){
$num =$num *10;
}
multiply();
echo $num;
由于函式 multiply() 沒有指定 $num 為全域變量(例如 global $num 或者 $_GLOBALS[num]),所以 $num 的值是 10。
騰訊php程序員面試題目及答案
設(shè)計任務(wù):
1、最近總有人騷擾我們的投票模塊,需要你來設(shè)計一個投票限制的東東
要求如下:
1)要求每個QQ號碼(假設(shè)此QQ號碼在UNIT32 內(nèi)可以表示)10分鐘這內(nèi)只能投5票。
2)我們的用戶很踴躍,平均每天要有2000萬人左右通過此程序投票。
說明:
1)無需寫代碼,只需要圖跟文字即可。
2)對于關(guān)鍵邏輯,請用圖加代碼表示出來,這也是對你文字表達能力的一個考驗。
3)對你能想到的所有的邊界條件列出來,這是對你邏輯思維全面與敏捷性的考驗。
4)存儲部分,盡你所能吧。如果,你需要一個自己設(shè)計的存儲層,那么把這個存儲層的實現(xiàn),用文字+圖片方式描述清楚,要是設(shè)計合理,你會獲得華麗的`獎分.
解答:
核心問題:如何統(tǒng)計10分鐘之內(nèi)投了5票?
首先:以秒為鍵切分?jǐn)?shù)據(jù)集,10*60=600個時間戳桶,并添加一個Forbid令牌桶
然后:每個數(shù)據(jù)集內(nèi),以qq號碼為鍵,vote次數(shù)為值
OK,已經(jīng)成功轉(zhuǎn)換為key-value方式存儲,2000萬的日投票,除以86400秒,并發(fā)231.48rps,使用memcache能夠輕松勝任。
數(shù)據(jù)集ID:201006072134
【QQ號碼:Vote次數(shù)】
201006072134 | 201006072135 | 201006072136
【12345:3】 | 【12345:3】 | 【12345:3】
【88888:2】 | 【88888:3】 | 【88888:3】
php程序員面試題
請列舉你能想到的UNIX信號,并說明信號用途。
請列舉、你能想到的所有的字符串查找算法,并加注釋簡單說明。
有一個IP地址(192.168.0.1),請寫出其32位無符號整數(shù)形式。
寫出、你能想到的所有HTTP返回狀態(tài)值,并說明用途(比如:返回404表示找不到頁面)
向php傳入?yún)?shù)的兩種方法。
(mysql)請寫出數(shù)據(jù)類型(int char varchar datetime text)的`意思; 請問varchar和char有什么區(qū)別;
error_reporting 等調(diào)試函數(shù)使用
您是否用過版本控制軟件? 如果有您用的版本控制軟件的名字是?
posix和perl標(biāo)準(zhǔn)的正則表達式區(qū)別;
Safe_mode 打開后哪些地方受限.
您是否用過模板引擎? 如果有您用的模板引擎的名字是?
請介紹Session的原理,大型網(wǎng)站中Session方面應(yīng)注意什么?
測試php性能和mysql數(shù)據(jù)庫性能的工具,和找出瓶頸的方法。
您寫過的PHP框架的特點,主要解決什么問題,與其他框架的不同點。
sort()、assort()、和 ksort() 有什么分別?它們分別在什么情況下使用?
reference 跟一個正規(guī)的變量有什么分別?如何 pass by reference?在什么情況下我們需要這樣做?
你如何替 PHP 的應(yīng)用程式偵錯?
百度php面試題
1.解釋下面語句的意思document.form["formName"].submit;
2.將字符09轉(zhuǎn)換成十進制數(shù)字。
3.將1234567890轉(zhuǎn)換成1,234,567,890 每3位用逗號隔開的`形式。
4.Ajax,數(shù)據(jù)庫觸發(fā)器GUI中斷機制的共同思想。談一談該種思想機制。
5.數(shù)據(jù)庫優(yōu)化
有一個表 PRODUCT(ID,NAME,PRICE,COUNT); 在執(zhí)行一下查詢的時候速度總是很慢 SELECT * FROM PRODUCT WHERE PRICE=100; 在price字段上加上一個非聚簇索引查詢速度還是很慢。
1分析查詢慢的原因。
2如何進行優(yōu)化。
6.一組隨機數(shù)學(xué)的數(shù)列,對其重新進行排序,要求實現(xiàn):奇數(shù)位保持奇數(shù),偶數(shù)位保持偶數(shù).
12個被提問頻率最高的php面試題及應(yīng)答技巧
1、問題:請用最簡單的語言告訴我php是什么?
回答:php全稱:hypertext preprocessor,是一種用來開發(fā)動態(tài)網(wǎng)站的服務(wù)器腳本語言。
2、問題:什么是mvc?
回答:mvc由model(模型), view(視圖)和controller(控制器)組成,php mvc可以更高效地管理好3個不同層的php代碼。
model:數(shù)據(jù)信息存取層。
view:view層負責(zé)將應(yīng)用的數(shù)據(jù)以特定的方式展現(xiàn)在界面上。
controller:通?刂破髫撠(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。
3、問題:在頁面中引用css有幾種方式?
回答:在頁面中使用css有3中方式:
引用外部css文件
內(nèi)部定義style樣式
內(nèi)聯(lián)樣式
4、問題:php支持多繼承嗎?
回答:不可以。php類只能繼承一個父類,并用關(guān)鍵字“extended”標(biāo)識。
5、問題:請問php中echo和print有什么區(qū)別?
這兩個看起來很相似,因為它們都是將一些值打印在屏幕上。但是echo和print的本質(zhì)區(qū)別在于:echo用來輸出字符串,顯示多個值的時候可以用逗號隔開。只支持基本類型,print不僅可以打印字符串值,而且可以打印函數(shù)的返回值。
6、問題:請問get和post方法有什么區(qū)別?
回答:我們再網(wǎng)頁上填寫的.表單信息都可以通過這兩個方法將數(shù)據(jù)傳遞到服務(wù)器上,當(dāng)我們使用get方法是,所有的信息都會出現(xiàn)在url地址中,并且使用get方法最多只能傳遞1024個字符,所以如果在傳輸量小或者安全性不那么重要的情況下可以使用get方法。說到post方法,最多可以傳輸2mb字節(jié)的數(shù)據(jù),而且可以根據(jù)需要調(diào)節(jié)。
php面試題
1.寫一個排序算法,可以是冒泡排序或者是快速排序,假設(shè)待排序?qū)ο笫且粋維數(shù)組。(提示:不能使用系統(tǒng)已有函數(shù),另外請仔細回憶以前學(xué)習(xí)過的基礎(chǔ)知識)
2.實現(xiàn)一個字符串截取的函數(shù),類似于substr,必須能夠截取中文這種多字節(jié)編碼。假設(shè)每個中文也是一個字符,普通的數(shù)字、符號、字母也是一個字符。(提示:GB編碼的中文字符高位范圍是 0x81-0xFE )
3.寫一個遍歷指定目錄下所有子目錄和子文件的函數(shù)(提示:可以使用遞歸的方法)
4.出五種以上你使用過的PHP的擴展的名稱(提示:常用的PHP擴展)
5.了解MVC模式嗎?請寫出三種以上目前PHP流行的MVC框架名稱(不區(qū)分大小寫)
6.寫出15個以上你所知道的常用的Linux命令和它的功能
7.使用過Vim編輯器嗎?如果使用過,如何在vim里切分多個可視化窗口,包括橫排和縱排。(本題選作)
8.說說Linux下的find命令和grep命令的區(qū)別(本題選作)
9.請描述出七層網(wǎng)絡(luò)模型的'名稱,由下到上(可以使用中文描述)
10.php包含外部文件的函數(shù)有哪些?
include() ; include_once(); require(); require_once();
11.php防止sql注入式攻擊,用什么函數(shù)轉(zhuǎn)換字符串?答案:addslashes();
12.你常用的php字符串函數(shù)?答案:substr(),strtolower(),ucwords(),ucfirst(),strtoupper(),implode(),explode(),str_replace(),strpos(),strrev()
PHP工程師常見面試題及回答技巧
1、問題:請用最簡單的語言告訴我php是什么?
回答:php全稱:hypertext preprocessor,是一種用來開發(fā)動態(tài)網(wǎng)站的服務(wù)器腳本語言。
2、問題:什么是mvc?
回答:mvc由model(模型), view(視圖)和controller(控制器)組成,php mvc可以更高效地管理好3個不同層的php代碼。
model:數(shù)據(jù)信息存取層。
view:view層負責(zé)將應(yīng)用的數(shù)據(jù)以特定的方式展現(xiàn)在界面上。
controller:通常控制器負責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。
3、問題:在頁面中引用css有幾種方式?
回答:在頁面中使用css有3中方式:
引用外部css文件
內(nèi)部定義style樣式
內(nèi)聯(lián)樣式
4、問題:php支持多繼承嗎?
回答:不可以。php類只能繼承一個父類,并用關(guān)鍵字“extended”標(biāo)識。
5、問題:請問php中echo和print有什么區(qū)別?
這兩個看起來很相似,因為它們都是將一些值打印在屏幕上。但是echo和print的本質(zhì)區(qū)別在于:echo用來輸出字符串,顯示多個值的時候可以用逗號隔開。只支持基本類型,print不僅可以打印字符串值,而且可以打印函數(shù)的返回值。
6、問題:請問get和post方法有什么區(qū)別?
回答:我們再網(wǎng)頁上填寫的表單信息都可以通過這兩個方法將數(shù)據(jù)傳遞到服務(wù)器上,當(dāng)我們使用get方法是,所有的信息都會出現(xiàn)在url地址中,并且使用get方法最多只能傳遞1024個字符,所以如果在傳輸量小或者安全性不那么重要的情況下可以使用get方法。說到post方法,最多可以傳輸2mb字節(jié)的數(shù)據(jù),而且可以根據(jù)需要調(diào)節(jié)。
PHP面試題匯編
PHP面試題匯編(一)
填空題
1.在PHP中,當(dāng)前腳本的名稱(不包括路徑和查詢字符串)記錄在預(yù)定義變量____中;而鏈接到當(dāng)前頁面的URL記錄在預(yù)定義變量____中。
2.執(zhí)行程序段將輸出____。
3.在HTTP 1.0中,狀態(tài)碼 401 的含義是____;如果返回“找不到文件”的提示,則可用 header 函數(shù),其語句為____。
4.數(shù)組函數(shù) arsort 的作用是____;語句 error_reporting(2047)的作用是____。
5.PEAR中的數(shù)據(jù)庫連接字符串格式是____。
6.寫出一個正則表達式,過慮網(wǎng)頁上的所有JS/VBS腳本(即把scrīpt標(biāo)記及其內(nèi)容都去掉):____。
7.以Apache模塊的方式安裝PHP,在文件http.conf中首先要用語句____動態(tài)裝載PHP模塊,然后再用語句____使得Apache把所有擴展名為php的文件都作為PHP腳本處理。
8.語句 include 和 require 都能把另外一個文件包含到當(dāng)前文件中,它們的區(qū)別是____;為了避免多次包含同一文件,可以用語句____來代替它們。
9.類的屬性可以序列化后保存到 session 中,從而以后可以恢復(fù)整個類,這要用到的函數(shù)是____。
10.一個函數(shù)的參數(shù)不能是對變量的引用,除非在php.ini中把____設(shè)為on.