- 相關(guān)推薦
一份比較全的PHP筆試題
1、如何實(shí)現(xiàn)PHP、JSP交互?
答:題目有點(diǎn)含糊不清,SOAP,XML_RPC,Socket function,CURL都可以實(shí)現(xiàn)這些,如果是考PHP和Java的整合,PHP內(nèi)置了這種機(jī)制(如果考PHP和.NET的整合,也可以這么回答), 例如$foo = new Java(‘java.lang.System’);
2、PHP的意思(送1分)
答:Hypertext Preprocessor超級(jí)文本預(yù)處理語(yǔ)言
3、MYSQL取得當(dāng)前時(shí)間的函數(shù)是?,格式化日期的函數(shù)是(2分)
答:取當(dāng)前時(shí)間的函數(shù)Now() 格式化日期的函數(shù) DATE_FORMAT(“時(shí)間”, “格式”)
4、實(shí)現(xiàn)中文字串截取無(wú)亂碼的方法。(3分)
答:第一種方法,使用mbstring擴(kuò)展庫(kù)的mb_substr
例如:
echo mb_substr(‘這樣一來(lái)我的字符串就不會(huì)有亂碼了’, 0, 7, ‘utf-8′);
?>
輸出:這樣一來(lái)我的字
第二種方法,用如下的函數(shù)實(shí)現(xiàn)
function GBsubstr($string, $start, $length) {
if(strlen($string)>$length){
$str=null;
$len=$start+$length;
for($i=$start;$i<$len;$i++){
if(ord(substr($string,$i,1))>0xa0){
$str.=substr($string,$i,2);
$i++;
}else{
$str.=substr($string,$i,1);
}
}
return $str.’…’;
}else{
return $string;
}
}
5、請(qǐng)簡(jiǎn)單闡述您最得意的開(kāi)發(fā)之作(4分)
答:
6、對(duì)于大流量的網(wǎng)站,您采用什么樣的方法來(lái)解決訪問(wèn)量問(wèn)題?(4分)
答:
7、用PHP寫(xiě)出顯示客戶端IP與服務(wù)器IP的代碼1分)
答:
8、如何修改SESSION的生存時(shí)間(1分).
答:
session_start();
// 保存一天
$lifeTime = 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, “/”);
?>
9、有一個(gè)網(wǎng)頁(yè)地址, 比如PHP研究室主頁(yè): http://www.php100.com,如何得到它的內(nèi)容?($1分)
答:echo file_get_contents( ” http://www.php100.com” );
10、在HTTP 1.0中,狀態(tài)碼401的含義是(401:身份驗(yàn)證錯(cuò)誤 );如果返回“找不到文件”的提示,則可用 header 函數(shù),其語(yǔ)句為( header(“找不到文件”); )
11、在PHP中,heredoc是一種特殊的字符串,它的結(jié)束標(biāo)志必須?(1分)
答:結(jié)束標(biāo)識(shí)符所在的行不能包含任何其它字符除”;”
12、談?wù)刟sp,php,jsp的優(yōu)缺點(diǎn)(1分)
答:
13、談?wù)剬?duì)mvc的認(rèn)識(shí)(1分)
答:
14、寫(xiě)出發(fā)貼數(shù)最多的十個(gè)人名字的SQL,利用下表:members(id,username,posts,pass,email)(2分)
15. 請(qǐng)說(shuō)明php中傳值與傳引用的區(qū)別。什么時(shí)候傳值什么時(shí)候傳引用?(2分)
16. 在PHP中error_reporting這個(gè)函數(shù)有什么作用? (1分)
17. 請(qǐng)寫(xiě)一個(gè)函數(shù)驗(yàn)證電子郵件的格式是否正確 (2分)
18. 簡(jiǎn)述如何得到當(dāng)前執(zhí)行腳本路徑,包括所得到參數(shù)。(2分)
19、JS表單彈出對(duì)話框函數(shù)是?獲得輸入焦點(diǎn)函數(shù)是? (2分)
20、JS的轉(zhuǎn)向函數(shù)是?怎么引入一個(gè)外部JS文件?(2分)
21、foo()和@foo()之間有什么區(qū)別?(1分)
22、如何聲明一個(gè)名為”myclass”的沒(méi)有方法和屬性的類(lèi)? (1分)
23、如何實(shí)例化一個(gè)名為”myclass”的對(duì)象?(1分)
24、你如何訪問(wèn)和設(shè)置一個(gè)類(lèi)的屬性? (2分)
25、mysql_fetch_row() 和mysql_fetch_array之間有什么區(qū)別? (1分)
26、GD庫(kù)是做什么用的? (1分)
27、指出一些在PHP輸入一段HTML代碼的辦法。(1分)
28、下面哪個(gè)函數(shù)可以打開(kāi)一個(gè)文件,以對(duì)文件進(jìn)行讀和寫(xiě)操作?(1分)
(a) fget() (b) file_open() (c) fopen() (d) open_file()
29、下面哪個(gè)選項(xiàng)沒(méi)有將 john 添加到users 數(shù)組中? (1分)
(a) $users[] = ‘john’;
(b) array_add($users,’john’);
(c) array_push($users,‘john’);
(d) $users ||= ‘john’;
30、下面的程序會(huì)輸入是否?(1分)
$num = 10;
function multiply(){
$num = $num * 10;
}
multiply();
echo $num;
?>
31、使用php寫(xiě)一段簡(jiǎn)單查詢,查出所有姓名為“張三”的內(nèi)容并打印出來(lái) (2分)
表名 UserName Tel Content Date
張三 13333663366 大專(zhuān)畢業(yè) 2006-10-11
張三 13612312331 本科畢業(yè) 2006-10-15
張四 021-55665566 中專(zhuān)畢業(yè) 2006-10-15
請(qǐng)根據(jù)上面的題目完成代碼:
$mysql_db=mysql_connect(“local”,”root”,”pass”);
@mysql_select_db(“DB”,$mysql_db);
32、如何使用下面的類(lèi),并解釋下面什么意思?(3)
class test{
function Get_test($num){
$num=md5(md5($num).”En”);
return $num;
}
}
—————————————————————————-
32、寫(xiě)出 SQL語(yǔ)句的格式 : 插入 ,更新 ,刪除 (4分)
表名 UserName Tel Content Date
張三 13333663366 大專(zhuān)畢業(yè) 2006-10-11
張三 13612312331 本科畢業(yè) 2006-10-15
張四 021-55665566 中專(zhuān)畢業(yè) 2006-10-15
(a) 有一新記錄(小王 13254748547 高中畢業(yè) 2007-05-06)請(qǐng)用SQL語(yǔ)句新增至表中
(b) 請(qǐng)用sql語(yǔ)句把張三的時(shí)間更新成為當(dāng)前系統(tǒng)時(shí)間
(c) 請(qǐng)寫(xiě)出刪除名為張四的全部記錄
33、請(qǐng)寫(xiě)出數(shù)據(jù)類(lèi)型(int char varchar datetime text)的意思; 請(qǐng)問(wèn)varchar和char有什么區(qū)別(2分)
34、MySQ自增類(lèi)型(通常為表ID字段)必需將其設(shè)為(?)字段(1分)
35、寫(xiě)出以下程序的輸出結(jié)果 (1分)
$b=201;
$c=40;
$a=$b>$c?4:5;
echo $a;
?>
36、檢測(cè)一個(gè)變量是否有設(shè)置的函數(shù)是否?是否為空的函數(shù)是?(2分)
—————————————————————————–
37、取得查詢結(jié)果集總數(shù)的函數(shù)是?(1分)
38、$arr = array(‘james’, ‘tom’, ‘symfony’); 請(qǐng)打印出第一個(gè)元素的值 (1分)
39、請(qǐng)將41題的數(shù)組的值用’,'號(hào)分隔并合并成字串輸出(1分)
40、$a = ‘abcdef’; 請(qǐng)取出$a的值并打印出第一個(gè)字母(1分)
41、PHP可以和sql server/oracle等數(shù)據(jù)庫(kù)連接嗎?(1分)
42、請(qǐng)寫(xiě)出PHP5權(quán)限控制修飾符(3分)
43、請(qǐng)寫(xiě)出php5的構(gòu)造函數(shù)和析構(gòu)函數(shù)(2分)
———————————————————————
44、以下請(qǐng)用PHPMYADMIN完成
(一)創(chuàng)建新聞發(fā)布系統(tǒng),表名為message有如下字段 (3分)
id 文章id
title 文章標(biāo)題
content 文章內(nèi)容
category_id 文章分類(lèi)id
hits 點(diǎn)擊量
(二)同樣上述新聞發(fā)布系統(tǒng):表comment記錄用戶回復(fù)內(nèi)容,字段如下 (4分)
comment_id 回復(fù)id
id 文章id,關(guān)聯(lián)message表中的id
comment_content 回復(fù)內(nèi)容
現(xiàn)通過(guò)查詢數(shù)據(jù)庫(kù)需要得到以下格式的文章標(biāo)題列表,并按照回復(fù)數(shù)量排序,回復(fù)最高的排在最前面
文章id 文章標(biāo)題 點(diǎn)擊量 回復(fù)數(shù)量
用一個(gè)SQL語(yǔ)句完成上述查詢,如果文章沒(méi)有回復(fù)則回復(fù)數(shù)量顯示為0
(三)上述內(nèi)容管理系統(tǒng),表category保存分類(lèi)信息,字段如下 (3分)
category_id int(4) not null auto_increment;
categroy_name varchar(40) not null;
用戶輸入文章時(shí),通過(guò)選擇下拉菜單選定文章分類(lèi)
寫(xiě)出如何實(shí)現(xiàn)這個(gè)下拉菜單
填空題
1.在PHP中,當(dāng)前腳本的名稱(chēng)(不包括路徑和查詢字符串)記錄在預(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.
11.SQL中LEFT JOIN的含義是____。如果 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ǔ)句____。
編程題
1. 寫(xiě)一個(gè)函數(shù),盡可能高效的,從一個(gè)標(biāo)準(zhǔn) url 里取出文件的擴(kuò)展名
例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php
2. 在 HTML 語(yǔ)言中,頁(yè)面頭部的 meta 標(biāo)記可以用來(lái)輸出文件的編碼格式,以下是一個(gè)標(biāo)準(zhǔn)的 meta 語(yǔ)句
請(qǐng)使用 PHP 語(yǔ)言寫(xiě)一個(gè)函數(shù),把一個(gè)標(biāo)準(zhǔn) HTML 頁(yè)面中的類(lèi)似 meta 標(biāo)記中的 charset 部分值改為 big5
請(qǐng)注意:
1. 需要處理完整的 html 頁(yè)面,即不光此 meta 語(yǔ)句
2. 忽略大小寫(xiě)
3. ‘ 和 ” 在此處是可以互換的
4. ‘Content-Type’ 兩側(cè)的引號(hào)是可以忽略的,但 ‘text/html; charset=gbk’ 兩側(cè)的不行
5. 注意處理多余空格
3. 寫(xiě)一個(gè)函數(shù),算出兩個(gè)文件的相對(duì)路徑
如 $a = ‘/a/b/c/d/e.php’;
$b = ‘/a/b/12/34/c.php’;
計(jì)算出 $b 相對(duì)于 $a 的相對(duì)路徑應(yīng)該是 ../../c/d將()添上
3.寫(xiě)一個(gè)函數(shù),能夠遍歷一個(gè)文件夾下的所有文件和子文件夾。
4.簡(jiǎn)述論壇中無(wú)限分類(lèi)的實(shí)現(xiàn)原理。
【一份比較全的PHP筆試題】相關(guān)文章:
PHP基礎(chǔ)筆試題12-10
幾道PHP筆試題02-11
PHP筆試題及答案02-11
PHP筆試題含答案02-11
Yahoo-PHP筆試題02-11
關(guān)于PHP面試題的分享11-20
迅雷2011.10.21筆試題08-10
中興2015筆試題08-02