php測試題


Php基礎知識測試題

 本試題共40道選擇題,10道判斷題,考試時間1個半小時

 一:選擇題(單項選擇,每題2分):

1. LAMP具體結構不包含下面哪種(A )

A:Windows系統

B:Apache服務器  

C:MySQL數據庫

D:PHP語言

2. 以下哪個SQL語句是正確的( D)

A:insert into users (‘p001’,’張三’,’男’);  

B:create table (Code int primary key);  

C:update users  Code=’p002’ where Code=’p001’;

D:select Code as ‘代號’ from users;

3. 以下哪種類型是B/S架構的正確描述(C )

A:需要客戶安裝客戶端  

B:不需要安裝就可以使用  

C:依托瀏覽器的網絡系統

D:不需要服務器的系統

4 . php中哪個語句可以輸出變量類型(C )

A:echo

B:print

C:var_dump()

D:print_r()

 

 

5 . php定義變量正確的是( B )

A:var a = 5;

B: $a = 10;

C:int b = 6;

D:var $a = 12;

6 . php中單引號和雙引號包含字符串的區別正確的是(D )

A:單引號速度快,雙引號速度慢

B:雙引號速度快,單引號速度慢

C:單引號里面可以解析轉義字符

D:雙引號里面可以解析變量

7 . 若x,y為整型數據,以下語句執行的$y結果為( B )

$x = 1;  

++$x;

 $y =$x++;    

A:1 B:2 C:3 D:0

8 . php中關於字符串處理函數以下說法正確的是( C )

A:implode( )方法可以將字符串拆解為數組//合並

B:str_replace()可以替換指定位置的字符串//查找替換

C:substr( )可以截取字符串

D:strlen( )不能取到字符串的長度

9 . 以下代碼運行結果為:( A )

<?php

$first = "This course is very easy !";

$second = explode(" ",$first);//空格拆分

$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 = strchr($email,‘@’);

$info = split(‘.’,$str);

var_dump($info);

   ?>

   輸出結果為:

Array ([0] => @thizlinux [1]=>com[2]=>cn)

A:strchr, split, var_dump

B:strstr, explode, print_r

C:strstr,explode, echo

D:strchr, split, var,_dump

11、下列說法正確的是:( B )

A. 數組的下標必須為數字,且從“0”開始

B. 數組的下標可以是字符串

C. 數組中的元素類型必順一致

D. 數組的下標必須是連續的

12、下面哪項描述是錯誤的?(A C )

A. 父類的構造函數與析構函數不會自動被調用

B. 成員變量需要用public protected private修飾,在定義變量時不再需要var關鍵字

C. 父類中定義的靜態成員,不可以在子類中直接調用

D. 包含抽象方法的類必須為抽象類,抽象類不能被實例化

13、關於exit( )與die( )的說法正確的是(C  )

A、當exit( )函數執行會停止執行下面的腳本,而die()無法做到//兩個都可以

B、當die()函數執行會停止執行下面的腳本,而exit( )無法做到

C、die()函數等價於exit()函數

D、die()函數於exit()函數沒有直接關系//有

 

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

      function print_A(){

      $A = "phpchina";

      echo "A值為: ".$A."<p>";

//return ($A);

      }

      $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 ";                  

function print_A()               

{

 $A = "php mysql !!";

  global $A;  //全局變量

 echo $A;

}

 

echo $A;

print_A();

?>

 

A Hello

B php mysql !!

C Hello Hello

D Hello  php mysql !!

17、以下代碼輸出的結果是(B )

$a = "aa";

$aa = "bb";

echo  $$a;

A aa

B bb

C $aa

D $$a

18、以下代碼輸出的結果是(A )

<?php

$a = 10;

$b = &$a;

echo $b;

$b = 15;

echo $a;

?>

A 1015

B 1010

C 1515

D 1510

 

19、php輸出拼接字符串正確的是( C )

A echo $a+”hello”

B echo $a+$b

C echo $a.”hello”

D echo ‘{$a}hello’//雙引號正確

20、在用瀏覽器查看網頁時出現404錯誤可能的原因是 ( B )

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”;可以輸出數據不報錯

27、下列說法不正確的是( D )

A:list()函數可以寫在等號左側//唯一一個可以的

B:each()函數可以返回數組里面的下一個元素

C:foreach()遍歷數組的時候可以同時遍歷出key和value

D:for循環能夠遍歷關聯數組

28、關於面向對象的說法不正確的是(C )

A:OOP是面向對象的簡稱

B:靜態成員是屬於類的

C:普通成員是屬於類的

D:類里面的$this關鍵字代表該對象本身

29、下列定義函數的方式是正確的( B )

A:public void Show(){ }

B:function Show($a=5,$b){  }

C:function Show(a,b){  }

D:function Show(int $a){  }

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:echo rand()*10;//數據庫里是這樣的

C:echo rand(1,10);

D:echo rand(10);

 

32、php中以下能輸出當前時間格式像:2016-5-6 13:10:56 的是(A )

A:echo date(“Y-m-d H:i:s”);

B:echo time();

C:echo date();

D:echo time(“Y-m-d H:i:s”);

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);

while(list($key,$value) = each($attr))

{

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中布爾類型數據只有兩個值:真和假。(   Y  )

2.php中連接兩個字符串的符號是“+ ”。(    F  )

3.php可以使用“scanf”來打印輸出結果。(    F  )

4.每個語句結尾都要加“;”來表示語句結束。 (  Y    )

5.php變量使用之前需要定義變量類型。(   F  )

6.在php中“==”的意思是“等於”。(   Y   )

7.while和do-while語句都是先判斷條件再執行循環體。( F    )

8.“break ”代表的意思是跳出循環。(    Y  )

9.若定義數組時省略關鍵字key,則第三個數組元素的關鍵字為3。(  F    )

10.mysql數據庫中查詢數據用select語句。(   Y    )


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM