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:
Phát biểu nào sao đây SAI về phương thức __construct()
A. __construct() được gọi tự động và được gọi đầu tiên khi một object được khởi tạo.
B. __construct() thường dùng để khởi tạo các giá trị ban đầu, các trường hợp gọi __construct()
C. __construct() được đặt tên trùng với tên class
D. __construct() phải có tham số được truyền
-
Câu 2:
Trong các điều khiển truy cập sau đây, điều khiển nào xác định rằng một tính năng có thể được truy cập bởi tất cả các lớp khác?
A. Protected
B. Abstract
C. Public
D. Private
-
Câu 3:
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 class A { static $word = "hello"; static function hello() { print static ::$word; } } class B extends A { static $word = "bye"; } B::hello(); ?>
A. bye
B. hello
C. byehello
D. Có lỗi xảy ra
-
Câu 4:
Làm sao để truy cập vào một thuộc tính trong class thông qua $this
A. $this.$varname
B. $this.varname
C. $this->varname
D. $this->$varname
-
Câu 5:
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 class A { }; class B1 extends A { }; class_alias('A', 'B2'); $b1 = new B1; echo get_class($b1); $b2 = new B2; echo get_class($b2); ?>
A. B1A
B. B2A
C. B1B2
D. It will throw an error.
-
Câu 6:
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 class number { public $a = 10; public $b = 20; private $c = 30; } $numbers = new number(); foreach ($numbers as $var => $value) { echo "$value "; } ?>
A. 10 20
B. The script will throw an error.
C. 10200
D. 10 20 30
-
Câu 7:
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 interface foo { } class_alias('foo', 'bar'); echo interface_exists('bar') ? 'yes' : 'no'; ?>
A. Error
B. No
C. Yes
D. NULL
-
Câu 8:
Phương pháp nào sau đây được gọi để in trực tiếp thông tin của mọt đối tượng (tương tự dùng echo hoặc print để in chuỗi)
A. __unset()
B. __isset()
C. __toString()
D. __set_state()
-
Câu 9:
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 class Object { function Object($entity) { $entity->name = "John"; } } class Entity { var $name = "Maria"; } $entity = new Entity(); $obj = new Object($entity); print $entity->name; ?>
A. Maria
B. John
C. The script will throw an error message.
D. JohnMaria
-
Câu 10:
Điều này sao đây mô tả đúng về thư viện PHPThumb
A. Thư viện xử lý các vấn đề liên quan đến hình ảnh
B. Thư viện xử lý các vấn đề liên quan đến biểu đồ
C. Thư viện xử lý các vấn đề liên quan đến tập tin Word và Excel
D. Thư viện xử lý các vấn đề liên quan đến tập tin PDF
-
Câu 11:
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 $values = array( 10, 20, '0', '10hello', 'hello10' ); echo array_sum($values); ?>
A. 20
B. 30
C. 40
D. 50
-
Câu 12:
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 = 4; $c = ($a++ * ++$b); echo $c; ?>
A. 20
B. 21
C. 27
D. 25
-
Câu 13:
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 $str = "It's \"good\""; echo strlen(addslashes($str)); ?>
A. 12
B. 13
C. 14
D. 15
-
Câu 14:
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 $foo = 'bar'; echo '$foo\'' . "$foo\'"; ?>
A. $foo'bar\'
B. bar'$foo\'
C. $foo'bar
D. $foobar
-
Câu 15:
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 $str = 'val1,val2,,val4,'; echo count(explode(',', $str)); ?>
A. 5
B. 6
C. 7
D. 8
-
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 = 0.5; $b = 0.1; $c = 16; echo sprintf('%01.2lf %.1lf 0x%x', $a, $b, $c); ?>
A. 0.50.1 0x10
B. 0.50 0.1 0x16
C. 0.50 0.1 0x10
D. 0.5 0.1 0x16
-
Câu 17:
SQL là chữ viết tắt của ?
A. Structured Query Language
B. Super Question Language
C. Strong Query Language
D. Structured Question Language
-
Câu 18:
Câu lệnh SQL nào sau đây để xóa bảng từ cơ sở dữ liệu cho trước
A. DELETE TABLE <table_name> FROM DATABASE
B. DELETE TABLE <table_name>
C. DROP TABLE <table_name>
D. DROP TABLE <table_name> FROM DATABASE
-
Câu 19:
Để hiển thị những dòng phân biệt (loại bỏ kết quả trùng) chúng ta sử dụng từ khóa nào sau đây?
A. ONLY
B. ALL
C. DISTINCT
D. ANY
-
Câu 20:
Khi thực thi câu lệnh SQL nếu gặp thông báo lỗi “Ambiguous column name”, điều này tương đương với phát biểu nào sao đây?
A. Tên cột không tìm thấy
B. Tên bảng không tìm thấy
C. Lỗi cú pháp
D. Tên cột có mặt ở nhiều bảng
-
Câu 21:
Thứ tự mệnh đề trong SQL được sắp xếp theo độ giảm dần thứ tự ưu tiên là phát biểu nào sau đây?
A. FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY
B. SELECT , FROM, WHERE, GROUP BY, HAVING, ORDER BY
C. SELECT , WHERE, FROM, GROUP BY, HAVING, ORDER BY
D. FROM, SELECT, GROUP BY, HAVING, WHERE, ORDER BY
-
Câu 22:
Cho bảng user gồm các cột id, firstname, lastname, email và age. Sử dụng điều kiện nào trong câu SQL để in ra những user từ 20 đến 40 tuổi
A. BETWEEN 25 & 40
B. BETWEEN 25 - 40
C. BETWEEN 25 TO 40
D. BETWEEN 25 AND 40
-
Câu 23:
Cho bảng user gồm các cột id, firstname, lastname, email và age. Sử dụng cụm nào trong câu SQL để in ra tên đầy đủ của một user (fullname = firstname + khoảng trắng + lastname
A. concat(firstname, “ “,lastname)
B. concat(lastname, “ “,firstname)
C. join(firstname, “ “,lastname)
D. join (lastname, “ “,firstname)
-
Câu 24:
Sử dụng từ khóa nào để đặt tên mới cho cột
A. ALIAS
B. AS
C. NEW_COLUMM_NAME
D. NEW_NAME
-
Câu 25:
Sử dụng từ khóa nào để cập nhật dữ liệu?
A. SAVE AS
B. SAVE
C. MODIFY
D. UPDATE
-
Câu 26:
Sử dụng từ khóa nào để them mới dữ liêu vào cơ sở dữ liệu?
A. INSERT NEW
B. ADD RECORD
C. INSERT INTO
D. ADD NEW
-
Câu 27:
Làm sao để chọn tất cả các cột trong bảng Persons?
A. SELECT *.Persons
B. SELECT Persons
C. SELECT [all] FROM Persons
D. SELECT * FROM Persons
-
Câu 28:
Làm sao để chọn tất cả các cột trong bảng Persons mà cột FirstName có giá trị là Peter
A. SELECT * FROM Persons WHERE FirstName<>'Peter'
B. SELECT [all] FROM Persons WHERE FirstName LIKE 'Peter'
C. SELECT [all] FROM Persons WHERE FirstName='Peter'
D. SELECT * FROM Persons WHERE FirstName=='Peter'
-
Câu 29:
Trong mệnh đề LIKE, cú pháp nào là đúng để tìm các giá trị nào kết thúc bằng “qpt”
A. LIKE %qpt
B. LIKE *ton
C. C
D. LIKE ^.*ton$
-
Câu 30:
Trong MySQL, câu lệnh USE
A. Để load code từ một file bên ngoài
B. Được dùng thay thế câu lệnh SELECT
C. Được dùng để chọn Database sau khi đã kết nối tới MySQL
D. Tất cả đều sai
-
Câu 31:
Hàm nào dùng để lấy thời gian hiện tại trong MySQL
A. getTime()
B. currentTime()
C. NOW()
D. thoigian()
-
Câu 32:
Trong MySQL, Hàm nào sau đây không phải là hàm tập hợp
A. AVG
B. MIN
C. MAX
D. Không có câu nào đúng
-
Câu 33:
mysql_pconnect() dùng để
A. Tạo kết nối tới db
B. Tạo kết nối tới db và liên kết SQL vẫn không đóng lại sau khi các câu lệnh được thực thi
C. Tạo kết nối tới db và liên kết SQL tự động đóng lại sau khi các câu lệnh được thực thi
D. Tất cả đều sai
-
Câu 34:
Trong MySQL, để chọn ra cột “FirstName” từ bảng “Persons”?
A. SELECT FirstName FROM Persons
B. EXTRACT FirstName FROM Persons
C. SELECT Persons.FirstName
D. Cả ba câu trên đều sai
-
Câu 35:
Câu lệnh nào được dùng để xóa 1 database trong MySQL
A. mysql_drop_database
B. mysql_drop_entiredb
C. mysql_drop_db
D. mysql_drop_dbase
-
Câu 36:
Tên 1 database tối đa có bao nhiêu kí tự
A. 55
B. 72
C. 64
D. 40
-
Câu 37:
Câu lệnh nào để tạo ra database “student”
A. CREATE ?I student
B. CREATE DATABASE student
C. DATABASE /student
D. DATABSE student
-
Câu 38:
Trong MySQL, Câu lệnh nào chỉ xóa dữ liệu của bảng
A. TRUNCATE
B. DROP
C. EMPTY
D. SELECT
-
Câu 39:
Trong SQL, từ khóa nào được dùng để sắp xếp kết quả trả về?
A. ORDER
B. SORT BY
C. ORDER BY
D. SORT
-
Câu 40:
PHP hỗ trợ hệ Quản Trị CSDL nào sớm nhất?
A. Oracle Database
B. SQL
C. SQL+
D. MySQL
-
Câu 41:
Câu lệnh nào được sử dụng để tạo bảng?
A. CREATE TABLE table_name (column_name column_type);
B. CREATE table_name (column_type column_name);
C. CREATE table_name (column_name column_type);
D. CREATE TABLE table_name (column_type column_name);
-
Câu 42:
Câu lệnh nào được sử dụng để chọn CSDL?
A. $mysqli=select_db(‘databasename’);
B. mysqli=select_db(‘databasename’);
C. mysqli->select_db(‘databasename’);
D. $mysqli->select_db(‘databasename’);
-
Câu 43:
Trong lớp mysqli của PHP, phương thức nào dùng để gửi câu truy vấn?
A. query()
B. send_query()
C. sendquery()
D. query_send()
-
Câu 44:
Trong PHP, hàm nào dùng để nhận dữ liệu trả về từ câu truy vấn database?
A. get_array() and get_row()
B. get_array() and get_column()
C. fetch_array() and fetch_row()
D. fetch_array() and fetch_column()
-
Câu 45:
Đoạn mã sau, in ra giá trị nào sau đây
$a = array( null => 'a', true => 'b', false => 'c', 0 => 'd', 1 => 'e', '' => 'f' ); echo count($a);
A. 2
B. 3
C. 5
D. 6
-
Câu 46:
Đoạn mã sau, in ra giá trị nào sau đây
$a = 1; { $a = 2; } echo $a;
A. 1
B. 2
C. 12
D. 6
-
Câu 47:
Đoạn mã sau, in ra giá trị nào sau đây
$var = 'a'; $VAR = 'b'; echo "$var$VAR";
A. ab
B. aa
C. bb
D. AB
-
Câu 48:
Đoạn mã sau, in ra giá trị nào sau đây
<?php $RESULT = 11 + 11 + 0x11; echo "$RESULT"; ?>
A. 22
B. 11
C. 39
D. 19
-
Câu 49:
Đoạn mã sau, in ra giá trị nào sau đây
$a = array(); if ($a == null) { echo 'true'; } else { echo 'false'; }
A. True
B. False
C. Không in
D. Cả A và B
-
Câu 50:
Giá trị của tham số sau
$var = 1 / 2;
A. 0
B. 1
C. 0,5
D. 1/2