Hướng dẫn
Quảng cáo

Làm thế nào để chuyển đổi một chuỗi thành một số trong PHP

Chủ đề: PHP / MySQLBài trước|Bài tiếp

Trả lời: Sử dụng ép kiểu

Như chúng ta biết PHP không yêu cầu hoặc hỗ trợ định nghĩa kiểu rõ ràng trong khai báo biến. Tuy nhiên, bạn có thể buộc một biến được đánh giá là một kiểu nhất định bằng cách sử dụng kiểu ép kiểu.

Ví dụ

<?php
$num = "2.75";
 
// Ép kiểu integer
$int = (int)$num;
echo gettype($int); // Outputs: integer
echo $int; // Outputs: 2
 
// Ép kiểu float
$float = (float)$num;
echo gettype($float); // Outputs: double
echo $float; // Outputs: 2.75
?>

Bạn có thể sử dụng (int)hoặc (integer)để ép kiểu một biến thành số nguyên, sử dụng (float)hoặc (double)(real) ép kiểu một biến thành float. Tương tự, bạn có thể sử dụng (string)để truyền một biến thành chuỗi, v.v.

Hàm PHP gettype() trả về "double" trong trường hợp có một số float vì lý do lịch sử.

Ngoài ra, bạn cũng có thể sử dụng intval()hàm để lấy giá trị nguyên của một biến.

Ví dụ

<?php
echo intval(2);       // Outputs: 2
echo intval(2.75);    // Outputs: 2
echo intval('34');    // Outputs: 34
echo intval('+34');   // Outputs: 34
echo intval('-34');   // Outputs: -34
echo intval(034);     // Outputs: 28
echo intval('034');   // Outputs: 34
echo intval(1e10);    // Outputs: 10000000000
echo intval('1e10');  // Outputs: 10000000000
echo intval(0xff);    // Outputs: 255
echo intval('0xff');  // Outputs: 0
?>

Câu hỏi liên quan

Dưới đây là một số câu hỏi thường gặp khác liên quan đến chủ đề này: