Kiểm tra số hữu tỉ trong PHP (is_finite) | Laptrinhcanban.com

Kiểm tra số hữu tỉ trong PHP (is_finite)

Hướng dẫn cách kiểm tra số hữu tỉ trong PHP. Bạn sẽ học được cách sử dụng hàm có sẵn is_finite trong PHP để kiểm tra một số có phải là số hữu tỉ hay không sau bài học này.

Số hữu tỉ trong PHP

Theo wikipedia thì khái niệm số hữu tỉ như sau:

Trong toán học, số hữu tỉ là các số x có thể biểu diễn dưới dạng phân số a/b, trong đó a và b là các số nguyên với b là một số khác 0.

Ví dụ các số như 3/4, 1/2 là các số hữu tỉ.

Ngược lại, các số không thể biểu diễn dưới dạng phân số thì sẽ được coi là số vô tỉ. Ví dụ như số pi (π), căn 2 (√2) hoặc 0,1010010001000010000010000001… chẳng hạn đều là các số không thể biểu diễn dưới dạng phân số.

Kiểm tra số có phải là số hữu tỉ trong PHP | is_finite

is_finite là một hàm có sẵn có tác dụng kiểm tra một số có phải là số hữu tỉ hay không. Ví dụ cụ thể, số 12.345 là một số hữu tỉ chẳng hạn.

Cách sử dụng hàm có sẵn is_finite trong PHP để kiểm tra số phải là số hữu tỉ như sau:

is_finite(num);

Trong đó num là số cần kiểm tra có phải là số hữu tỉ hay không.

Hàm is_finite() sẽ kiểm tra số chỉ định có phải thuộc kiểu số, và có giá trị số hữu tỉ hay không.

Nếu số đã cho thuộc kiểu số, hoặc là một đối tượng có thể chuyển đổi về kiểu số (ví dụ như chữ số, true hoặc null ), hàm sẽ tiến hành kiểm tra số đó. Tuy nhiên nếu chúng ta chỉ định đối tượng không thể chuyển về kiểu số, ví dụ như một chuỗi ký tự, lỗi chương trình sẽ được trả về.

Ví dụ cụ thể sử dụng is_finite() trong PHP:

echo is_finite(12);        // true
echo is_finite(12.345); // true
echo is_finite(-1.225e-3); // true
echo is_finite(0); // true

Các giá trị sau đây thuộc kiểu số và không phải số hữu tỉ nên giá trị false được trả về:

is_finite(10 / 3); // false   

is_finite( pi() ); // false

is_finite(sqrt(2)); // false

Các giá trị sau đây có thể chuyển về kiểu số nên có thể chỉ định trong hàm.

is_finite('12');      // true
is_finite('12.34'); // true
is_finite(true); // false
is_finite(null); // true

Tuy nhiên nếu chỉ định các giá trị không thể chuyển về kiểu số, lỗi TypeError sẽ được trả về.

echo is_finite('');       
echo is_finite(' ');
echo is_finite('blabla');
echo is_finite(array(10, 20));

>>> Uncaught TypeError: is_finite(): Argument #1 ($num) must be of type float, string given

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về cách kiểm tra số có phải là số hữu tỉ trong PHP bằng is_finite rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về PHP trong các bài học tiếp theo.

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.