PHP基礎知識測試題


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

 

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

 

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

A:Windows系統

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. 以下哪種類型是Bbrower/S網頁程序架構的正確描述( C)

C/S客戶端程序

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

$x=1;

$y=++$x;

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

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

____($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、下面哪項描述是錯誤的?( 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 頁面源代碼錯誤       500

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;  

該方式可以定義字符串

$str=<<<B

Agagafa

    B;      這一行前面不能有任何東西

 

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

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:構造函數寫法和普通函數沒有區別     construct 執行時間特殊new時執行

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取到  js方法         

  php  count方法
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?B:C
判定A的值,true執行B false執行C

A:cc 
B:$a

C:$$a

D:dd

 

、判斷題(共10題,每題2分)

 

1.php中布爾類型數據只有兩個值:真和假。(   √  )

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

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

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

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

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

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

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

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

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


免責聲明!

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



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