Làm thế nào để bạn làm tròn đến số nguyên gần nhất trong php?

Một tình huống phổ biến là bạn muốn độ chính xác thấp hơn so với PHP cung cấp cho bạn, trong trường hợp đó, bạn cần sử dụng một trong các hàm làm tròn được lựa chọn của PHP. trần(), sàn() và tròn()

Cả trần() và sàn() chỉ lấy một tham số - số cần làm tròn. Ceil() lấy số và làm tròn nó thành số nguyên gần nhất trên giá trị hiện tại của nó, trong khi floor() làm tròn nó thành số nguyên gần nhất dưới giá trị hiện tại của nó. Đây là một ví dụ


Sau khi thực thi mã đó, $ceiled sẽ là 5 và $floored sẽ là 4

Ghi chú của tác giả. Hàm floor() chuyển đổi một số dấu phẩy động thành một số nguyên theo cách tương tự như cách nhập liệu, ngoại trừ việc nhập liệu nhanh hơn. Sự khác biệt duy nhất là với các số âm, trong đó sàn() sẽ làm tròn -4. 5 xuống -5 trong khi typecasting sẽ trả về -4

Hàm khác có sẵn là round(), hàm này nhận hai tham số - số cần làm tròn và số vị trí thập phân cần làm tròn. Nếu một số chính xác là một nửa giữa hai số nguyên, round() sẽ luôn làm tròn lên


Như bạn có thể thấy, 4. 5 được làm tròn thành 5, trong khi 4. 4999 được làm tròn xuống 4. Dòng bốn có tham số hai được sử dụng lần đầu tiên, điều này cho thấy rất dễ làm tròn đến một số chữ số thập phân cho trước. Lưu ý rằng trong dòng năm, chúng tôi nhận được 4. 1235 khi làm tròn đến bốn chữ số thập phân, bởi vì PHP nhìn thêm một chữ số để quyết định chữ số cuối cùng. Đó là, nếu số của chúng tôi là 4. 12344, làm tròn đến bốn chữ số thập phân sẽ cho ta 4. 1234, nhưng vì chữ số thứ năm là 5, luôn được làm tròn lên, nên chúng ta thấy mình có 4. 1235 thay vì

Ví dụ cuối cùng, $f, là một tình huống phổ biến mà những người sử dụng round() gặp phải. Hãy tưởng tượng bạn đang tổ chức một chuyến đi lớn đến vùng nông thôn và 1000 người đã đăng ký. Bạn cần tính xem mình cần thuê bao nhiêu huấn luyện viên, vì vậy bạn lấy số người 1000 người chia cho số lượng huấn luyện viên của bạn là 160, sau đó làm tròn số đó để có một số nguyên và bạn sẽ tìm được kết quả là

Vấn đề ở đâu? . 25 - bạn cần sáu toa rưỡi để vận chuyển 1000 người và bạn sẽ chỉ đặt sáu toa vì round() làm tròn thành 6 thay vì 7 vì nó gần hơn. Vì bạn không thể đặt sáu toa rưỡi, bạn sẽ làm gì? . trong những tình huống như thế này, bạn sử dụng ceil(). Cả ba hàm làm tròn đều hữu ích theo cách riêng của chúng, vì vậy hãy nhớ cố gắng ghi nhớ tất cả chúng

Bạn muốn học PHP 7?

Hacking with PHP đã được cập nhật đầy đủ cho PHP 7 và hiện có sẵn dưới dạng PDF có thể tải xuống. Nhận hơn 1200 trang học PHP thực hành ngay hôm nay

Nếu điều này hữu ích, vui lòng dành chút thời gian để nói với những người khác về Hacking với PHP bằng cách tweet về nó

Bài viết này sẽ hướng dẫn bạn cách làm tròn số trong PHP bằng hàm round(), bao gồm làm tròn đến số nguyên gần nhất hoặc một số vị trí thập phân đã đặt

Tại sao làm tròn số?

Có nhiều lý do bạn có thể muốn làm tròn số. Bạn không cần độ chính xác đáng kinh ngạc cho nhiều phép tính hàng ngày. Bạn có thể không cần biết chiều cao của mình đến vài phần nghìn của centimet nếu chuyển đổi từ feet – biết đến centimet gần nhất có lẽ là đủ. Nếu đang tính thuế, bạn chỉ cần biết kết quả theo đơn vị tiền tệ nhỏ nhất hiện có – một số vị trí thập phân cố định nhất định

Một số có độ chính xác vượt quá mục đích dự định của nó sẽ gây nhầm lẫn và ảnh hưởng đến khả năng đọc – làm tròn cho phép bạn thể hiện giá trị đó một cách thích hợp

PHP round() Cú pháp hàm

Hàm round() trong PHP có cú pháp như sau

?round($number, $precision, $mode)

Lưu ý rằng

  • $number có thể là bất kỳ giá trị số nào
  • $precision là số chữ số bạn muốn xuất hiện sau dấu thập phân trong số kết quả
    • Nếu không được chỉ định, $precision sẽ được đặt thành 0, tôi. e. , làm tròn đến số nguyên gần nhất
    • Nếu một độ chính xác âm được đưa ra, thì số chữ số trước dấu thập phân được làm tròn thành lũy thừa gần nhất của 10
      • i. e. , nếu $precision là -1, thì việc làm tròn được thực hiện đến 10 gần nhất;
  • $mode xác định cách làm tròn số
    • Xem bảng bên dưới để biết các tùy chọn
    • Giá trị này là tùy chọn và sẽ mặc định là PHP_ROUND_HALF_UP
  • Hãy nhớ rằng, làm tròn là việc một chiều – bạn không thể lấy lại số ban đầu từ một số đã làm tròn – vì vậy nếu số ban đầu vẫn được yêu cầu, hãy đảm bảo rằng bạn gán số đã làm tròn cho một biến mới

chế độ làm tròn

PHP_ROUND_HALF_UPRounds cách từ 0 cho các số bằng một nửa hoặc lớn hơn. 2. 5 trở thành 3, -2. 5 trở thành -3PHP_ROUND_HALF_DOWNLàm tròn về không cho các số bằng một nửa hoặc thấp hơn. 2. 5 trở thành 2, -2. 5 trở thành -2PHP_ROUND_HALF_EVENLàm tròn đến số chẵn gần nhất khi ở nửa điểm. 1. 5 trở thành 2, 2. 5 trở thành 2PHP_ROUND_HALF_ODDRLàm tròn đến số lẻ gần nhất khi ở nửa điểm. *1. 5 trở thành 1, 2. 5 trở thành 3

ví dụ

Làm tròn thành số nguyên

Trong ví dụ dưới đây, một số dấu phẩy động được xác định và sau đó được làm tròn thành số nguyên gần nhất

$myNumber = 3.56;
$myRoundedNumber = round($myNumber);
echo $myRoundedNumber; // Will output the number 4

Vì không có độ chính xác nào được xác định nên nó được đặt mặc định là 0

Làm tròn số thập phân

Dưới đây, chúng tôi làm tròn đến 1 chữ số thập phân bằng cách chỉ định độ chính xác

$myNumber = 3.56;
$myRoundedNumber = round($myNumber, 1);
echo $myRoundedNumber; // Will output the number 3.6

Làm tròn đến số chẵn hoặc số lẻ gần nhất

Ví dụ dưới đây làm tròn đến chữ số chẵn và lẻ gần nhất ở hai chữ số thập phân. Khi ở nửa điểm làm tròn, chữ số chẵn hoặc lẻ gần nhất được sử dụng

Làm cách nào tôi có thể đặt 2 chữ số thập phân trong PHP?

Sử dụng hàm number_format() để hiển thị một số đến hai chữ số thập phân trong PHP . Sử dụng hàm round() để hiển thị một số đến hai vị trí thập phân trong PHP. Sử dụng hàm sprintf() để hiển thị một số đến hai vị trí thập phân trong PHP.

Độ chính xác PHP là gì?

Độ chính xác được định nghĩa là số chữ số có nghĩa và tỷ lệ là số chữ số phía sau dấu thập phân. Điều này có nghĩa là một số như “1. 23E-1000” sẽ yêu cầu thang đo 1002 nhưng độ chính xác là 3.

Phao PHP là gì?

Trong PHP, kiểu dữ liệu Float được dùng để đặt giá trị phân số . Số float là một số có dấu thập phân và có thể được mở rộng thành dạng số mũ. Float còn được gọi là số dấu phẩy động. Nhiều cách khác nhau để biểu diễn các giá trị float là 3. 14, 4. 75, 5. 88E+20, v.v.