JavaScript is required

Đoạn code sau đây cho ra kết quả gì?

$x = "101.5degrees";

(double)$x;

(int)$x;

echo (string)$x;

?>

A.

101.5

B.

degrees

C.

101

D.

101.5degrees

Trả lời:

Đáp án đúng: D


Đoạn code PHP này thực hiện các bước sau:

  1. Gán chuỗi "101.5degrees" cho biến $x.
  2. Ép kiểu $x sang số thực (double). Tuy nhiên, việc ép kiểu này không gán lại giá trị đã ép cho $x, nên $x vẫn giữ giá trị ban đầu là chuỗi.
  3. Ép kiểu $x sang số nguyên (int). Tương tự như trên, việc ép kiểu này không gán lại giá trị cho $x. Khi một chuỗi được ép sang số nguyên, PHP sẽ cố gắng chuyển đổi phần đầu của chuỗi thành số. Trong trường hợp này, phần số của chuỗi là 101, do đó nếu gán lại thì $x = 101
  4. echo (string)$x;: In giá trị của $x ra màn hình. Vì $x vẫn là chuỗi "101.5degrees", nên kết quả in ra sẽ là chính chuỗi đó.

Do đó, đáp án đúng là 101.5degrees.

Câu hỏi liên quan