JavaScript is required

Phát biểu nào sau đây về hàm do người dùng định nghĩa trong PHP là SAI?

A.

Tên hàm không phân biệt chữ hoa và chữ thường

B.

Phạm vi truy cập là siêu toàn cục

C.

Giá trị được truyền vào hàm theo dạng ByVal cần dùng ký tự “&”

D.

Để tham số được truyền vào theo dạng ByRef cần dùng ký tự “&”

Trả lời:

Đáp án đúng: C


Câu hỏi kiểm tra kiến thức về hàm do người dùng định nghĩa trong PHP, đặc biệt là về phạm vi, cách truyền tham số và tên hàm.

  • Đáp án 1: Tên hàm không phân biệt chữ hoa và chữ thường là đúng. PHP coi myfunction()MyFunction() là cùng một hàm.
  • Đáp án 2: Phạm vi truy cập là siêu toàn cục là SAI. Biến trong hàm do người dùng định nghĩa có phạm vi cục bộ (local scope) trừ khi được khai báo là global hoặc sử dụng các biến siêu toàn cục như $_GET, $_POST, $_SESSION,...
  • Đáp án 3: Giá trị được truyền vào hàm theo dạng ByVal (truyền theo giá trị) trong PHP mặc định là không cần ký tự "&". Do đó, phát biểu này sai.
  • Đáp án 4: Để tham số được truyền vào theo dạng ByRef (truyền theo tham chiếu) cần dùng ký tự “&” là đúng. Điều này cho phép hàm sửa đổi giá trị của biến gốc được truyền vào.

Do đó, đáp án SAI là phạm vi truy cập là siêu toàn cục.

Câu hỏi liên quan