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