250 Câu hỏi trắc nghiệm lập trình PHP có đáp án
Tổng hợp 250 câu hỏi trắc nghiệm lập trình PHP có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức. Để ôn tập hiệu quả các bạn có thể ôn theo từng phần trong bộ câu hỏi này bằng cách trả lời các câu hỏi và xem lại đáp án và lời giải chi tiết. Sau đó các bạn hãy chọn tạo ra đề ngẫu nhiên để kiểm tra lại kiến thức đã ôn.
Chọn hình thức trắc nghiệm (50 câu/60 phút)
Chọn phần
-
Câu 1:
Trong PHP, để gọi hằng số PI của lớp mathFunction
A. echo PI;
B. echo mathFunction->PI;
C. echo mathFunction::PI;
D. echo mathFunction=PI;
-
Câu 2:
Trong PHP, dòng nào dưới đây để gọi một phương thức
A. $object->methodName();
B. object->methodName();
C. object::methodName();
D. $object::methodName();
-
Câu 3:
PHP không hỗ trợ từ khóa tầm vực nào sau đây:
A. final
B. abstract
C. final, abstract
D. Tất cả từ khóa đều được PHP hỗ trợ
-
Câu 4:
Trong PHP, từ khóa tầm vực nào ngăn không cho một phương thức bị ghi đè bởi lớp con
A. Abstract
B. Protected
C. Final
D. Static
-
Câu 5:
Điều nào là đúng về phương thức dựng (Constructors) trong PHP:
i) PHP 4 giới thiệu phương thức dựng
ii) Phương thức dựng chấp nhận tham số truyền vào
iii) Trong phương thức dựng có thể gọi đến các phương thức khác.
iv) Trong phương thức dựng có thể gọi đến các phương thức dựng khác
A. ii) và iii) đúng
B. Tất cả các câu trên đều đúng
C. Tất cả các câu trên đều sai
D. ii), iii) và iv) đúng
-
Câu 6:
Khai báo nào là đúng cho phương thức dựng (Constructor) trong PHP
A. classname()
B. _construct()
C. function -construct()
D. function __construct()
-
Câu 7:
…. Giới thiệu từ khóa “instanceof” ? Điền vào dấu ...
A. PHP 4
B. PHP 5
C. PHP 5.3
D. PHP 6
-
Câu 8:
Trong PHP, hàm nào sau đây được dùng để xác định một lớp có tồn tại hay không?
A. exist()
B. exist_class()
C. class_exist()
D. __exist()
-
Câu 9:
Hàm nào sau đây được dùng để xác định loại của đối tượng object trong PHP
A. obj_type()
B. type()
C. is_a()
D. is_obj()
-
Câu 10:
Tính trừu tượng trong OOP là
A. Polymorphism
B. Inheritance
C. Encapsulation
D. Abstraction
-
Câu 11:
Tính trừu tượng trong OOP là
A. Polymorphism
B. Inheritance
C. Encapsulation
D. Abstraction
-
Câu 12:
Tính trừu tượng trong OOP là
A. Polymorphism
B. Inheritance
C. Encapsulation
D. Abstraction
-
Câu 13:
Trong đoạn code dưới đây, …… là một thuộc tính
<?php class Example { public $name; function Sample() { echo "This is an example"; } } ?>
A. echo “This is an example”;
B. public $name;
C. class Example
D. function sample()
-
Câu 14:
Trong PHP, từ khóa nào được dùng để truy xuất đến các phương thức và thuộc tính trong chính lớp đó
A. private
B. public
C. protected
D. $this
-
Câu 15:
Trong PHP, từ khóa nào cho phép các phương thức và thuộc tính của lớp có thể được truy xuất mà không cần khởi tạo đối tượng của lớp đó
A. protected
B. final
C. static
D. private
-
Câu 16:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $a = 5; $b = 12; $c = 10; $d = 7; $e = ($a * $b) + $c * $d / $a; print ($e); ?>
A. 74
B. 154
C. 26
D. 130
-
Câu 17:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $b = false; if ($b = true) print ("true"); else print ("false"); ?>
A. False
B. True
C. Có lỗi xảy ra
D. True false
-
Câu 18:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php for ($x = 1;$x <= 2;$x++) { for ($y = 1;$y <= 3;$y++) { if ($x == $y) continue; print ("x = $x y = $y"); } } ?>
A. x = 2 y = 3
B. x = 1 y = 1
C. x = 2 y = 2
D. x = 3 y = 3
-
Câu 19:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $x = 25; while ($x < 10) { $x--; } print ($x); ?>
A. 25
B. 0
C. Có xảy ra lỗi
D. 10
-
Câu 20:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php switch (1) { case 1: print ("Book Details"); case 2: print ("Book Author"); default: print ("Missing Book"); } ?>
A. Book Details
B. Book Author
C. Missing Book
D. Book DetailsBook AuthorMissing Book
-
Câu 21:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php function modvalue() { $a = 20; $b = 4; $c = $a % $b; print ($c); } modvalue(); ?>
A. 4
B. 0
C. 20
D. 5
-
Câu 22:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $a = 5; $b = 12; $c = 10; $d = 7; $e = ($a * $b) + $c * $d / $a; print ($e); ?>
A. 154
B. 74
C. 130
D. 26
-
Câu 23:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php function b($a = 4) { $a = $a / 2; return $a; } $a = 10; b($a); echo $a; ?>
A. 5
B. 10
C. 2
D. Có lỗi xảy ra
-
Câu 24:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $a; for ($a = 1;$a <= 9;$a++) { if ($a == 5) continue; print ($a); } ?>
A. 12345
B. 56789
C. 12346789
D. 123456789
-
Câu 25:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<? echo (int)"1235Jason"; ?>
A. 1235
B. Có lỗi xảy ra
C. 0
D. 1235Jason
-
Câu 26:
Chức năng "Loại bỏ phần tử cuối cùng của mảng và trả về phần tử cuối cùng đã được loại bỏ" là chức năng của hàm nào trong các hàm sau đây
A. array_pop
B. array_shift
C. array_unique
D. unset
-
Câu 27:
Chức năng "Tính tổng các phần tử trong mảng" là chức năng của hàm nào trong các hàm sau đây
A. sum
B. array_sum
C. sum_array
D. Cả 3 đáp án trên
-
Câu 28:
Chức năng " Chuyển một chuỗi thành một mảng" là chức năng của hàm nào trong các hàm sau đây
A. str_to_array
B. str_array
C. implode
D. explode
-
Câu 29:
Chức năng " Chuyển một mảng thành một chuỗi" là chức năng của hàm nào trong các hàm sau đây
A. array_to_str
B. array_str
C. implode
D. explode
-
Câu 30:
Chức năng "Làm tròn số" không phải là chức năng của hàm nào trong các hàm sau đây
A. round
B. ceil
C. floor
D. round_number
-
Câu 31:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $array = array( "a1" => 'x', "a2" => 'e', "a3" => 'z' ); asort($array); foreach ($array as $keys => $values) { print "$keys = $values"; } ?>
A. a2 = e a1 = x a3 = z
B. a1 = e a2 = x a3 = z
C. 0 = e 1 =x 2 = z
D. Có lỗi xảy ra
-
Câu 32:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $array = array( "a1" => x, "a2" => e, "a3" => z ); ksort($array); foreach ($array as $keys => $values) { print "$keys = $values "; } ?>
A. a1 = x a2 = e a3 = z
B. a1 = e a2 = x a3 = z
C. 0 = e 1 = x 2 = z
D. Có lỗi xảy ra
-
Câu 33:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $array1 = array( "a", "b", "c", "d", "e", "f" ); $array2 = array_slice($array1, -3); foreach ($array2 as $val) { print "$val "; } ?>
A. b c d
B. a b c
C. d e f
D. c d e
-
Câu 34:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $string1 = "ab"; $string2 = "cd"; $string1 = $string1 . $string2; $string3 = "abc"; $string1 .= $string3; echo $string1; ?>
A. cdabcab
B. abc
C. cdabc
D. abcdabc
-
Câu 35:
Chức năng "Kiểm tra sự tồn tại của tập tin, thư mục" là chức năng của hàm nào trong các hàm sau đây?
A. file_exist
B. filetype
C. filesize
D. is_executable
-
Câu 36:
Một tập tin được cấu hình với quyền 754, như vậy phát biểu nào sau đây là phát biểu đúng ?
A. Owner/User có quyền đọc và thực thi
B. Owner/User chỉ có quyền đọc tập tin
C. Owner/User có toàn quyền
D. Owner/User chỉ có quyền ghi tập tin
-
Câu 37:
Đoạn mã HTML nào sau đây được sử dụng cho việc upload tập tin trong form?
A. <form enctype="text/plain" action="index.php" method="post">
B. <form enctype="plain" action="index.php" method="post">
C. <form enctype="multipart/form-data" action="index.php" method="post">
D. <form enctype="application/upload-file" action="index.php" method="post">
-
Câu 38:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php $a = "hi,world"; $b = array_map("strtoupper", explode(",", $a)); foreach ($b as $value) { print "$value"; } ?>
A. hiworld
B. HI,WORLD
C. The script will throw an error.
D. Có lỗi xảy ra
-
Câu 39:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì ?
<?php if (preg_match("/[^a-z589]+/", "AB asdfg589nmGH", $array)) { print "<pre>\n"; print_r($array[0]); print "</pre>\n"; } ?>
A. 589
B. ABGH
C. asdfg589nm
D. AB
-
Câu 40:
Làm cách nào để lưu trữ một biến age có giá trị 25 vào trong session
A. $age = 25; session_regiser('age');
B. $_SESSION['age'] = 25;
C. session_register('age', 25);
D. $HTTP_SESSION_VARS['age'] = 25;
-
Câu 41:
Làm thế nào để bạn bắt đầu sử dụng Session trong PHP?
A. Luôn luôn được tự động gọi
B. Gọi hàm start_session()
C. Thiết lập session.auto_start trong phần cấu hình
D. Gọi hàm session_register()
-
Câu 42:
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì (đối với cùng một người dùng)
<?php session_start(); if (!array_key_exists('counter', $_SESSION)) { $_SESSION['counter'] = 0; } else { $_SESSION['counter']++; } session_regenerate_id(); echo $_SESSION['counter']; ?>
A. 1
B. 2
C. 3
D. 4
-
Câu 43:
Trong các cách sau đây, cách nào giúp bạn nhận được dữ liệu gửi đi từ Form mà không chắc chắn cơ chế nó được gửi đi như thế nào?
A. $_REQUEST[]
B. $_GET[]
C. $_POST[]
D. $_SEND[]
-
Câu 44:
Phát biểu nào sao đây sai về XML
A. XML quy định người dùng phải tuân theo các thẻ riêng mà XML đã định nghĩa sẵn
B. Các thẻ XML khá giống với HTML: tag, data, attribute
C. XML được xây dựng theo dạng cây, phải có tối thiểu một nút gốc
D. XML được hỗ trợ trên các trình duyệt phổ biến hiện
-
Câu 45:
Phát biểu nào sao đây đúng về công dụng của XML?
A. Lưu trữ thông tin nhỏ
B. Tạo phần tóm tắt nội dung cho website (RSS)
C. Tạo sơ đồ cho website (sitemap)
D. Là cầu nối trao đổi dữ liệu giữa các ứng dụng web (web service)
-
Câu 46:
Trong Xpath để lấy ra thông tin phần tử ở vị trí cuối cùng, chúng ta sử dụng
A. last()
B. last()-1
C. end()
D. end()-1
-
Câu 47:
Phương thức nào sau đây được sử dụng để lấy các không gian tên được sử dụng trong một tài liệu XML từ một đối tượng SimpleXMLElement?
A. getName()
B. getNamespaces()
C. getElement()
D. getDefined()
-
Câu 48:
Phương thức nào sau đây được sử dụng để lấy tên của phần tử XML từ một đối tượng SimpleXMLElement?
A. getDefined()
B. getNamespaces()
C. getName()
D. getCall()
-
Câu 49:
Trong DomDocument sử dụng phương thức nào để thêm node vào một node nào đó cho trước
A. insertBefore
B. insertFirst
C. insertStart
D. insert
-
Câu 50:
Lập trình hướng đối tượng có tên vắt tắt là ?
A. OOP
B. OPO
C. PPO
D. OPP