一:選擇題(單項選擇,每題2分):
1. LAMP具體結構不包含下面哪種(A )
A:Windows系統 如果是這個就是WMP
B:Apache服務器
C:MySQL數據庫
D:PHP語言
2. 以下哪個SQL語句是正確的(D )
A:insert into users 少了一個values (‘p001’,’張三’,’男’);
B:create table (Code int primary key); 漏了一個表名
C:update users 少了一個set Code=’p002’ where Code=’p001’;
D:select Code as ‘代號’ from users;
3. 以下哪種類型是B/S架構的正確描述(C) B/S 瀏覽器
A:需要客戶安裝客戶端 在瀏覽器上打開,並不需要安裝客戶端
B:不需要安裝就可以使用 瀏覽器的一些程序也需要安裝后在使用的 例如cms
C:依托瀏覽器的網絡系統
D:不需要服務器的系統 每種程序都需要服務器
4 .php中哪個語句可以輸出變量類型(C)
A:echo 輸出字符串
B:print 輸出字符串
C:var_dump() 輸出類型 變量的值
D:print_r() 輸出數組的 並沒輸出類型
5 .php定義變量正確的是( B )
A:var a = 5; JS定義方式
B: $a = 10;
C:int b = 6; 強類型語言定義方式
D:var $a = 12; 前面不需要加var
6 .php中單引號和雙引號包含字符串的區別正確的是(D)
A:單引號速度快,雙引號速度慢
B:雙引號速度快,單引號速度慢 A和B定義方式沒有速度差別
C:單引號里面可以解析轉義字符 單引號可以原樣輸出
D:雙引號里面可以解析變量
7 .若x,y為整型數據,以下語句執行的$y結果為( B)
$x = 1; x定義等於1
++$x; x等於2了
$y =$x++; 先把x值附給y,在把x自加1所有等於2!!如果是++$x就是3
A:1 B:2 C:3 D:0
8 .php中關於字符串處理函數以下說法正確的是( C )
A:implode( )方法可以將字符串拆解為數組 應該用explode implode是合並 正好相反
B:str_replace()可以替換指定位置的字符串 查找替換把滿足的全部替換 可以用substr_replace 這種是用來替換指定位置
C:substr( )可以截取字符串
D:strlen( )不能取到字符串的長度 可以獲取長度
9 .以下代碼運行結果為:(A )
<?php
$first = "This course is very easy !"; 定義了一個變量first=
$second = explode(" ",$first); 由定義了一個變量second=拆分字符串 用空格拆分的
$first = implode(",", $second); 將數字組合並了字符串
echo $first;
?>
A This,course,is,very,easy,! 把原來的空格變成了 ,
B This course is very easy !
C This course is very easy !,
D 提示錯誤
10 .以下程序橫線處應該使用的函數為:( B ) 作用:把@符號前面的字符全部截掉
<?php
$email = ‘langwan@thizlinux.com.cn’;
$str = ____($email,‘@’);
$info = ____(‘.’,$str);
____($info);
?>
輸出結果為:
Array ([0] => @thizlinux [1]=>com[2]=>cn) 輸出結果是一個數組
A:strchr, split, var_dump 如果是這個的話就應該有類型,長度
B:strstr, explode, print_r strstr 也可以截取字符串,不常用
C:strstr,explode, echo
D:strchr, split, var,_dump
11、下列說法正確的是:(B) 如果不放在php里面那么ACD都是正確的
A. 數組的下標必須為數字,且從“0”開始 放強類型語言是對的
B. 數組的下標可以是字符串
C. 數組中的元素類型必順一致 可以存儲任意類型
D. 數組的下標必須是連續的 可以不連續
12、下面哪項描述是錯誤的?(A,C)
A. 父類的構造函數與析構函數不會自動被調用 都是自動調用的
B. 成員變量需要用public protected private修飾,在定義變量時不再需要var關鍵字
C. 父類中定義的靜態成員,不可以在子類中直接調用 可以用
D. 包含抽象方法的類必須為抽象類,抽象類不能被實例化
13、關於exit( )與die( )的說法正確的是( C D)
A、當exit( )函數執行會停止執行下面的腳本,而die()無法做到 exit die都是終止程序
B、當die()函數執行會停止執行下面的腳本,而exit( )無法做到
C、die()函數等價於exit()函數
D、die()函數於exit()函數沒有直接關系
例:
$a =10;
exit ();或者die();
echo $a;
變量a沒有輸出,說明程序走到exit退出了或者走到 die也退出了
它倆的區別:
$a =10;
echo"該程序出錯了";
exit;
echo $a;
它會輸出一個錯誤信息並且把程序終止掉
如果是
$a =10;
die("該程序出錯了"); 可以給它參數,當執行到這的時候給出一個錯誤並且終止程序
echo $a;
14、下面程序運行結果( B )
<?php
$nextWeek = time() + (7 * 24 * 60 * 60); 先輸出當前日期在輸出下周日期, 格式化了一下
echo 'Now: '. date('Y-m-d') ."\n";
echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
?>
A、得到今天的日期(月-日)
B、得到今天的日期(年-月-日)與下周的日期(年-月-日)
C、得到現在的時間(小時-分-秒)
D、得到現在到下周的時間間隔
15、以下代碼執行結果為:(D )
<?php
functionprint_A(){
$A = "phpchina";
echo "A值為: ".$A."<p>";
//return ($A); 如果注釋去掉的話就選擇C
}
$B = print_A(); 運行時會出錯,因為沒有返回值,是空的
echo "B值為: ".$B."<P>";
?>
A A值為:
B值為:
B A值為:
B值為: phpchina
C A值為: phpchina
B值為: phpchina
D A值為: phpchina
B值為:
16、以下代碼執行結果為:( C )
<?php
$A="Hello ";
functionprint_A()
{
$A = "phpmysql !!";
global $A; global 全局變量 函數是獨立的模塊 $A外界定義的
echo $A;
}
echo $A;
print_A();
?>
A Hello
B phpmysql !!
C Hello Hello
D Hello phpmysql !!
17、以下代碼輸出的結果是(B ) 可變變量
$a = "aa";
$aa = "bb";
echo $$a;
A aa
B bb
C $aa
D $$a
18、以下代碼輸出的結果是(A )
<?php
$a = 10;
$b = &$a; 取a
echo $b; b也指向10
$b = 15;
echo $a;
?>
A 1015
B 1010
C 1515
D 1510
19、php輸出拼接字符串正確的是( C )
A echo $a+”hello” php里不是用+
B echo $a+$b
C echo $a.”hello”
D echo ‘{$a}hello’ 錯在用的是單引號,雙引號就對了
20、在用瀏覽器查看網頁時出現404錯誤可能的原因是 ( B ) 404 代表網頁不存在沒有找到文件
A 頁面源代碼錯誤
B 文件不存在
C 與數據庫連接錯誤
D 權限不足
21、以下代碼輸出的結果為(D)
<?php
$attr = array("0"=>"aa","1"=>"bb","2"=>"cc"); 加了索引是關聯數組
echo $attr[1];
?>
A 會報錯!
B aa
C 輸出為空
D bb 弱類型語言,可以自動轉換
22、面向對象的三大特性中哪個不屬於封裝的做法(B )
A 將成員變為私有的
B 將成員變為公有的
C 封裝方法來操作成員
D 使用__get()和__set()方法來操作成員
23、php的源碼是(A ) 開源語言
A.開放的 B.封閉的 C.需購買的 D.完全不可見的
24、php如何輸出反斜杠( D ) 轉義字符
A.\n 代表換行 B.\r 代表換行 C.\t 代表制表符 D.\\
25、下列哪項不屬於OOP的三大特性(B )
A:封裝 B:重載 C:繼承 D:多態
26、以下關於字符串的說法正確的是(C )
A:echo “hello\nworld”;在頁面可以實現換行 在源代碼里可以,在頁面里不可以
B:echo ‘helloworld{$a}’;可以解析變量a的值 單引號不能解析
C:$str=<<<AA 定義字符串的第三種方法
Hello world
AA;標識
該方式可以定義字符串
D:print $a,”hello”;可以輸出數據不報錯 print只能輸出一個字符串,不能連續輸出
27、下列說法不正確的是( D )
A:list()函數可以寫在等號左側 唯一可以寫在等號左邊的
B:each()函數可以返回數組里面的下一個元素 如果each第一次調的時候返回的第一個,把第一個當做下一個沒有問題,如果 把第一個當做第一個就有問題
C:foreach()遍歷數組的時候可以同時遍歷出key和value
D:for循環能夠遍歷關聯數組 不能遍歷關聯數組
28、關於面向對象的說法不正確的是(C )
A:OOP是面向對象的簡稱
B:靜態成員是屬於類的
C:普通成員是屬於類的 屬於對象的
D:類里面的$this關鍵字代表該對象本身
29、下列定義函數的方式是正確的( B )
A:public void Show(){ } 不是php里面的
B:function Show($a=5,$b){ } 給了個默認值
C:function Show(a,b){ } 變量前面加$符號
D:functionShow(int $a){ } 不需要加int
30、下面哪個選項沒有將 john 添加到 users 數組中? ( B )
A. $users[] = "john";
B. array_add($users, "john"); php沒有這種方法添加
C. array_push($users, "john");
D. $users [“aa”]= "john" ;
31、php中以下能輸出1到10之間的隨機數的是(C )
A:echo rand();
B:echorand()*10;
C:echo rand(1,10);
D:echorand(10);
32、php中以下能輸出當前時間格式像:2016-5-6 13:10:56 的是(A )
A:echodate(“Y-m-d H:i:s”); date方法用來 格式化輸出時間 括號里面寫的是格式化字符串
B:echo time(); 直接輸出時間戳了
C:echodate(); 方法會報錯
D:echotime(“Y-m-d H:i:s”); time里面不能寫雙引號
33、以下哪項不屬於函數的四要素( D ) 返回類型,函數名,參數列表,函數體
A:返回類型
B:函數名
C:參數列表
D:訪問修飾符
34、以下說法正確的是(C )
A:@符號可以屏蔽所有錯誤
B:exit;后面的語句可以繼續執行
C:10/4得出的結果是2.5 整數除以整數可以得出小數
D:$$a;這種寫法是錯誤的
35、以下關於構造函數說法不正確的是( B )
A:研究一個類,首先我們要研究的函數是構造函數
B:構造函數寫法和普通函數沒有區別 寫法特殊有區別
C:構造函數執行比較特殊
D:如果父類中存在構造函數並且需要參數,子類在造對象的時候也應該傳入相應的參數。
36、以下關於多態的說法正確的是( D )
A:多態在每個對象調用方法時都會發生
B:多態是由於子類里面定義了不同的函數而產生的
C:多態的產生不需要條件
D:當父類引用指向子類實例的時候,由於子類對父類的方法進行了重寫,在父類引用調用相應的函數的時候表現出的不同稱為多態。
37、以下代碼在頁面上會輸出多少行數據(A )
$attr = array(1,2,3,4); 數組里面總共4個元素
while(list($key,$value) = each($attr)) each方法會把指針往下調,如果最后了就停止了while循環是進不來的,所以只能輸出4行
{
echo $key."=>".$value."<br>";
}
while(list($key,$value) = each($attr))
{
echo $key."=>".$value."<br>";
}
A:4 B:6 C:8 D:12
38、以下說法正確的是(C )
A:$attr代表數組,那么數組長度可以通過$attr.length取到
B:unset()方法不能刪除數組里面的某個元素 可以刪除
C:php的數組里面可以存儲任意類型的數據
D:php里面只有索引數組 還有關聯數組
39、以下說法不正確的是( B )
A:模糊查詢使用的關鍵字是like
B:排序查詢asc是降序,desc是升序 反了
C:分頁查詢使用的關鍵字是limit
D:mysql如果只安裝服務不安裝界面也可以正常使用
40、以下代碼輸出的結果為(D ) 三目運算符
$a = "cc";
$cc = "dd";
echo $a=="cc"?"{$$a}":$a;
A:cc
B:$a
C:$$a
D:dd
二、判斷題(共10題,每題2分)
1.php中布爾類型數據只有兩個值:真和假。( 對 ) 邏輯的真和假
2.php中連接兩個字符串的符號是“+ ”。( 錯 ) 用的是 點 .
3.php可以使用“scanf”來打印輸出結果。( 錯 ) echo print
4.每個語句結尾都要加“;”來表示語句結束。 ( 對 )
5.php變量使用之前需要定義變量類型。( 錯 ) 不需要 會根據后邊的值自動確定類型
6.在php中“==”的意思是“等於”。( 對 ) 一個等號代表賦值,雙等號代表等於
7.while和do-while語句都是先判斷條件再執行循環體。( 錯 ) while是先判斷條件 do-while是先執行循環體再判斷
8.“break ”代表的意思是跳出循環。( 對 ) continue是跳出當前這一次循環
9.若定義數組時省略關鍵字key,則第三個數組元素的關鍵字為3。( 錯 ) 應該是2 定義數組時省略關鍵字key,說明定義了一個索引數組,索引數組里第三元素是2
10.mysql數據庫中查詢數據用select語句。( 對 )