[PHP for the Web] #4 Sử dụng Numbers trong PHP

Ở bài 2, “Biến trong PHP“, chúng ta đã tóm tắt qua về sự đa dạng của biến, cách gắn giá trị cho chúng và cách sử dụng. Trong bài này, bạn sẽ làm việc chi tiết với biến Numbers và sử dụng Numbers trong PHP.

Bài này sẽ bắt đầu với việc tạo một form HTML, form này sẽ gắn tính toán các biến số. Bạn sẽ học được cách format numbers, số học. Ngoài ra còn về các tạo một số tăng, giảm và cách tạo một số ngẫu nhiên. Hãy cùng bắt đầu nào!

Tạo Form

Chúng ta tạo một form để tính toán chi phí thanh toán cho một cửa hàng. Bao gồm giá cả, số lượng, khuyến mãi, thuế và phí ship.

Tạo Form HTML: calculator.html

Form HTML
Form HTML

Thực hiện Tính toán

Như được học từ trường học, toán học ở đây cũng bao gồm 4 phương pháp chính:

  • Cộng (+)
  • Trừ (-)
  • Nhân (*)
  • Chia (/)

Chúng ta sẽ tạo file PHP để tính tổng chi phí từ file form HTML bên trên.

Tạo file tính toán chi phí: handle_calc.php

Sau khi summit Form này...
Sau khi summit Form này…
Kết quả sau khi tính toán

Nhìn vào kết quả trên bạn cũng có thể thấy, số có vẻ hơn lẻ và hơn khó nhìn. Vậy chúng ta cần Format Numbers.

Formatting Numbers

Để làm tròn số chúng ta có 2 cách đó là round()number_format(). Để có thể hiểu hơn, bạn hãy xem ví dụ dưới đây:

round(4.30); // 4
round(4.289, 2); // 4.29
$num = 236.26985;
round($num);// 236

number_format(428.4959, 2); // 428.50
number_format(428, 2); // 428.00
number_format(123456789); // 123,456,789

Vậy bạn có thể thấy, round có tác dụng làm tròn số, number_fomat có tác dụng làm tròn số và định dạng hàng nghìn phân tách bởi dấu phẩy (,).

Áp dụng Format Numbers

Áp dụng Format numbers phần xử lý form, ta có:

$total = number_format ($total, 2);
$monthly = number_format ($monthly, 2);

Sau khi summit Form
Sau khi summit Form
Chi phí trả về đã có định dạng đẹp, đễ nhìn hơn nhờ number_format()
Chi phí trả về đã có định dạng đẹp, đễ nhìn hơn nhờ number_format()

Hiểu về quyền Ưu tiên

Viện Ưu tiên trong tính toán tức là thứ tự phép tính được thực hiện. Ví dụ như, giá trị của phép tính này là gì?

$number = 10 – 4 / 2;

Vậy $number là 3 ( 10 trừ 4 bằng 6, chia 2 bằng 3) hay là 8 (4 chia 2 bằng 2, 10 trừ 2 bằng 8) ? Câu trả lời là 8, bởi phép nhân chia luôn được ưu tiên hơn cộng trừ.

Tuy nhiên nếu bạn muốn dễ nhìn và dễ tính hơn, chúng ta có thể áp dụng dấu ngoặc tròn để thực hiện ưu tiên.

$number = (10 – 4) / 2; // 3
$number = 10 – 4 / 2; // 8

Áp dụng phần này vào phần tính toán trong file handle_calc.php. Chúng ta sẽ có như

Thành

File handle_calc.php sau khi áp dụng:

Tăng và giảm một Số

Ta có, cấu trúc nhìn khá không đẹp như sau:

$tax = $tax + 1;

Khi bạn cần tăng hoặc giảm một đơn vị của giá trị bạn có thể dùng ++ hoặc , như sau:

$var = 20; //
$var++; //21
$var++; //22
$var–; //21

Áp dụng vào trong form tính, ta chuyển:

Thành

File handle_calc.php sau khi áp dụng:

Ngoài ra, bạn cũng có thể áp dụng các phép toán khác như:

$num = $num + 5;
$num += 5;

Hay như:

$tax = $_POST[‘tax’]; // 5
$tax /= 100; // $tax bằng 0.05
$tax += 1 // 1.05

Tạo Số ngẫu nhiên

Function cuối cùng bạn học trong bài này là rand(), tạo số ngẫu nhiên.

$n = rand(); // 31
$n = rand(); // 87

Function rand() có thể giới hạn min và max của giá trị hay còn gọi là giới hạn khoảng giá trị:

$n = rand(0, 10);

Vậy giá trị ở đây sẽ chỉ ngẫu nhiền từ 0 cho đến 10.

Tạo số ngẫu nhiên

Ba con số nhận được bởi function rand()
Mỗi lần chạy sẽ cho một kết quả khác nhau

Leave a Reply

avatar
  Subscribe  
Notify of
%d bloggers like this: