Trong Phần 1 của bài viết về các hàm toán học trong PHP, chúng ta đã khám phá một số hàm cơ bản và rất hữu ích như abs(), ceil(), sqrt(), và pow(). Ở Phần 2 này, chúng ta sẽ tiếp tục tìm hiểu thêm nhiều hàm toán học khác với tính năng đa dạng và nâng cao hơn, từ việc kiểm tra giá trị vô hạn, sinh số ngẫu nhiên cho đến các hàm lượng giác, logarithm, và chuyển đổi giữa các hệ cơ số. Với sự hỗ trợ của những hàm này, bạn có thể thực hiện các phép tính phức tạp một cách dễ dàng và hiệu quả hơn trong PHP.
1. is_finite() - Kiểm tra xem số có phải hữu hạn không
- Trả về
truenếu số là hữu hạn, ngược lại trả vềfalse. - Cú pháp:
is_finite(number)
Ví dụ:
<?php
var_dump(is_finite(1.23)); // Kết quả: bool(true)
?>2. is_infinite() - Kiểm tra xem số có phải vô hạn không
- Trả về
truenếu số là vô hạn, ngược lại trả vềfalse. - Cú pháp:
is_infinite(number)
Ví dụ:
<?php
var_dump(is_infinite(1.0e+500)); // Kết quả: bool(true)
?>3. is_nan() - Kiểm tra xem giá trị có phải "NaN" không
- Trả về
truenếu giá trị là NaN (Not-a-Number), ngược lại trả vềfalse. - Cú pháp:
is_nan(number)
Ví dụ:
<?php
var_dump(is_nan(acos(2))); // Kết quả: bool(true)
?>4. lcg_value() - Sinh giá trị ngẫu nhiên giữa 0 và 1
- Trả về số ngẫu nhiên từ 0 đến 1 bằng cách sử dụng máy phát số ngẫu nhiên kết hợp tuyến tính.
- Cú pháp:
lcg_value()
Ví dụ:
<?php
echo lcg_value(); // Ví dụ: 0.345678123
?>5. log() - Tính logarithm
- Tính logarithm của một số, mặc định cơ số là
e. Có thể chỉ định cơ số khác. - Cú pháp:
log(number, base)
Ví dụ:
<?php
echo log(10); // Kết quả: 2.302585 (log cơ số e)
echo log(100, 10); // Kết quả: 2 (log cơ số 10 của 100)
?>6. log10() - Logarithm cơ số 10
- Tính logarithm cơ số 10 của một số.
- Cú pháp:
log10(number)
Ví dụ:
<?php
echo log10(1000); // Kết quả: 3
?>7. log1p() - Logarithm của 1 cộng với số
- Trả về
log(1 + number)một cách chính xác hơn với các số nhỏ. - Cú pháp:
log1p(number)
Ví dụ:
<?php
echo log1p(0.01); // Kết quả: 0.00995033
?>8. max() - Giá trị lớn nhất
- Trả về giá trị lớn nhất trong một danh sách các số hoặc mảng.
- Cú pháp:
max(value1, value2, ...)
Ví dụ:
<?php
echo max(1, 3, 5, 9); // Kết quả: 9
?>9. min() - Giá trị nhỏ nhất
- Trả về giá trị nhỏ nhất trong một danh sách các số hoặc mảng.
- Cú pháp:
min(value1, value2, ...)
Ví dụ:
<?php
echo min(1, 3, 5, 9); // Kết quả: 1
?>10. mt_getrandmax() - Giá trị lớn nhất của mt_rand()
- Trả về giá trị lớn nhất mà hàm
mt_rand()có thể tạo ra. - Cú pháp:
mt_getrandmax()
Ví dụ:
<?php
echo mt_getrandmax(); // Kết quả: 2147483647 (hoặc giá trị lớn hơn tùy vào hệ thống)
?>11. mt_rand() - Sinh số ngẫu nhiên
- Trả về một số nguyên ngẫu nhiên trong khoảng [min, max] hoặc trong khoảng [0,
mt_getrandmax()] nếu không chỉ định. - Cú pháp:
mt_rand(min, max)
Ví dụ:
<?php
echo mt_rand(1, 100); // Ví dụ: 42
?>12. mt_srand() - Khởi tạo hạt giống cho mt_rand()
- Khởi tạo hạt giống cho hàm
mt_rand()để tạo ra dãy số ngẫu nhiên. - Cú pháp:
mt_srand(seed)
Ví dụ:
<?php
mt_srand(1234);
echo mt_rand(); // Luôn trả về cùng một dãy số nếu sử dụng chung seed
?>13. octdec() - Chuyển đổi bát phân sang thập phân
- Chuyển đổi chuỗi số bát phân (octal) thành thập phân (decimal).
- Cú pháp:
octdec(octal_string)
Ví dụ:
<?php
echo octdec('12'); // Kết quả: 10
?>14. pi() - Giá trị của số Pi
- Trả về giá trị của Pi (π ~ 3.1415926535898).
- Cú pháp:
pi()
Ví dụ:
<?php
echo pi(); // Kết quả: 3.1415926535898
?>15. pow() - Lũy thừa
- Tính lũy thừa của một số.
- Cú pháp:
pow(base, exp)
Ví dụ:
<?php
echo pow(2, 3); // Kết quả: 8
?>16. rad2deg() - Chuyển đổi radian sang độ
- Chuyển đổi một góc từ đơn vị radian sang đơn vị độ.
- Cú pháp:
rad2deg(radian)
Ví dụ:
<?php
echo rad2deg(pi()); // Kết quả: 180
?>17. rand() - Sinh số ngẫu nhiên
- Trả về một số ngẫu nhiên trong khoảng [min, max] hoặc trong khoảng [0,
getrandmax()] nếu không chỉ định. - Cú pháp:
rand(min, max)
Ví dụ:
<?php
echo rand(1, 100); // Ví dụ: 57
?>18. round() - Làm tròn số
- Làm tròn số tới số chữ số thập phân bạn chỉ định (mặc định là 0 chữ số thập phân).
- Cú pháp:
round(number, precision)
Ví dụ:
<?php
echo round(3.14159, 2); // Kết quả: 3.14
?>19. sin() - Tính sine
- Tính sine của một góc (đơn vị radian).
- Cú pháp:
sin(number)
Ví dụ:
<?php
echo sin(pi()/2); // Kết quả: 1
?>20. sinh() - Tính hyperbolic sine
- Tính hyperbolic sine của một số.
- Cú pháp:
sinh(number)
Ví dụ:
<?php
echo sinh(1); // Kết quả: 1.175
?>21. sqrt() - Tính căn bậc hai
- Tính căn bậc hai của một số.
- Cú pháp:
sqrt(number)
Ví dụ:
<?php
echo sqrt(16); // Kết quả: 4
?>22. srand() - Khởi tạo hạt giống cho rand()
- Khởi tạo hạt giống cho hàm
rand()để tạo dãy số ngẫu nhiên. - Cú pháp:
srand(seed)
Ví dụ:
<?php
srand(1234);
echo rand(); // Luôn trả về cùng một dãy số nếu sử dụng chung seed
?>23. tan() - Tính tangent
- Tính tangent của một góc (đơn vị radian).
- Cú pháp:
tan(number)
Ví dụ:
<?php
echo tan(pi()/4); // Kết quả: 1
?>24. tanh() - Tính hyperbolic tangent
- Tính hyperbolic tangent của một số.
- Cú pháp:
tanh(number)
Ví dụ:
<?php
echo tanh(1); // Kết quả: 0.761
?>Kết luận
Qua hai phần của loạt bài về PHP Math Functions, chúng ta đã đi qua hầu hết các hàm toán học quan trọng mà PHP cung cấp. Từ những hàm đơn giản như max(), min() cho đến các hàm phức tạp hơn như log(), sinh(), hay tanh(), PHP đem đến cho lập trình viên một công cụ mạnh mẽ để xử lý các tác vụ liên quan đến tính toán. Sử dụng thành thạo những hàm này sẽ giúp bạn tối ưu hóa quá trình lập trình, đặc biệt trong các ứng dụng liên quan đến tính toán, khoa học dữ liệu, và phát triển các thuật toán.









