PHP - Operators: Hướng dẫn thân thiện về法术 Programming Magic

Xin chào các pháp sư tương lai! ? Là một giáo viên máy tính gần gũi với nhiều năm kinh nghiệm, tôi rất vui được dẫn các bạn vào một chuyến hành trình thú vị qua thế giới các phép toán trong PHP. Đừng lo lắng nếu bạn chưa bao giờ viết mã trước đây - chúng ta sẽ bắt đầu từ đầu và cùng nhau xây dựng kiến thức, bước đi từng bước. Nào, cầm lấy cây phép (bàn phím) ảo của bạn và cùng nhau lặn sâu vào!

PHP - Operators

Các phép toán trong PHP là gì?

Hãy tưởng tượng bạn đang ở trong một nhà bếp, cố gắng nướng một chiếc bánh ngon lành. Bạn có nguyên liệu (dữ liệu), nhưng bạn cần các công cụ để trộn, đo lường và so sánh chúng. Trong thế giới lập trình, các phép toán là những công cụ đó. Chúng giúp chúng ta thực hiện các hành động trên dữ liệu của mình, giống như cách một tua và giúp bạn trộn nguyên liệu.

Trong PHP, các phép toán là các ký hiệu hoặc từ khóa cho biết máy tính thực hiện các thao tác cụ thể trên các giá trị hoặc biến. Chúng là các pháp thuật giúp mã của chúng ta thực hiện điều có ích!

Hãy bắt đầu với một ví dụ đơn giản:

<?php
$magicNumber = 42;
$result = $magicNumber + 8;
echo $result;
?>

Trong đoạn mã này, '+' là phép toán. Nó đang nói với PHP để cộng 8 vào $magicNumber. Khi bạn chạy đoạn mã này, bạn sẽ thấy số 50 xuất hiện - như thể bằng phép thuật!

Các phép toán số học trong PHP

Bây giờ, hãy khám phá phép thuật số học mà PHP cung cấp. Các phép toán số học là như những pháp thuật cơ bản mà mỗi pháp sư lập trình nên biết.

Dưới đây là bảng các phép toán số học, kèm theo ví dụ:

Phép toán Tên Ví dụ Kết quả
+ Cộng $a + $b Tích của $a và $b
- Trừ $a - $b Hiệu của $a và $b
* Nhân $a * $b Tích của $a và $b
/ Chia $a / $b Tích của $a chia cho $b
% Modulo $a % $b Dư của $a chia cho $b
** Lũy thừa $a ** $b $a mũ $b

Hãy xem chúng trong hành động:

<?php
$potion1 = 10;
$potion2 = 3;

echo $potion1 + $potion2; // Output: 13
echo $potion1 - $potion2; // Output: 7
echo $potion1 * $potion2; // Output: 30
echo $potion1 / $potion2; // Output: 3.3333333333333
echo $potion1 % $potion2; // Output: 1
echo $potion1 ** $potion2; // Output: 1000
?>

Mỗi dòng thực hiện một thao tác số học khác nhau. Phép toán '%' có thể trông lạ lẫm - nó cho bạn dư sau khi chia. Nó vô cùng hữu ích khi bạn cần kiểm tra một số có là chẵn hay lẻ, hoặc khi bạn đang xử lý các mẫu tròn.

Các phép toán so sánh trong PHP

Tiếp theo trong sổ pháp thuật của chúng ta là các phép toán so sánh. Đây là như pháp thuật "Revelio" trong Harry Potter - chúng tiết lộ sự thật về mối quan hệ giữa các giá trị.

Dưới đây là bảng các phép toán so sánh:

Phép toán Tên Ví dụ Kết quả
== Bằng $a == $b Đúng nếu $a bằng $b
=== Tương đương $a === $b Đúng nếu $a bằng $b và chúng có cùng kiểu
!= Không bằng $a != $b Đúng nếu $a không bằng $b
<> Không bằng $a <> $b Đúng nếu $a không bằng $b
!== Không tương đương $a !== $b Đúng nếu $a không bằng $b hoặc chúng không cùng kiểu
< Nhỏ hơn $a < $b Đúng nếu $a nhỏ hơn $b
> Lớn hơn $a > $b Đúng nếu $a lớn hơn $b
<= Nhỏ hơn hoặc bằng $a <= $b Đúng nếu $a nhỏ hơn hoặc bằng $b
>= Lớn hơn hoặc bằng $a >= $b Đúng nếu $a lớn hơn hoặc bằng $b
<=> Tàu vũ trụ $a <=> $b Trả về -1, 0 hoặc 1 khi $a lần lượt nhỏ hơn, bằng hoặc lớn hơn $b

Hãy thực hiện một số phép so sánh:

<?php
$wandLength1 = 11;
$wandLength2 = "11";

var_dump($wandLength1 == $wandLength2);  // Output: bool(true)
var_dump($wandLength1 === $wandLength2); // Output: bool(false)
var_dump($wandLength1 < 12);             // Output: bool(true)
var_dump($wandLength1 <=> 12);           // Output: int(-1)
?>

Chú ý cách '==' và '===' hành xử khác nhau? '===' kiểm tra cả giá trị và kiểu, trong khi '==' chỉ kiểm tra giá trị. Đó như kiểm tra nếu hai cây đũa tương tự (==) hoặc exactly alike (===).

Các phép toán logic trong PHP

Các phép toán logic là những người quyết định trong mã của chúng ta. Chúng giúp chúng ta kết hợp nhiều điều kiện, giống như một pháp sư thành thạo kết hợp các pháp thuật khác nhau để tạo ra hiệu ứng mạnh mẽ.

Dưới đây là bảng các phép toán logic:

Phép toán Tên Ví dụ Kết quả
and $a and $b Đúng nếu cả $a và $b đều đúng
or Hoặc $a or $b Đúng nếu hoặc $a hoặc $b đúng
xor Hoặc duy nhất $a xor $b Đúng nếu hoặc $a hoặc $b đúng, nhưng không phải cả hai
&& $a && $b Đúng nếu cả $a và $b đều đúng
Hoặc $a
! Không !$a Đúng nếu $a không đúng

Hãy xem chúng hoạt động:

<?php
$isWizard = true;
$hasWand = false;

var_dump($isWizard && $hasWand); // Output: bool(false)
var_dump($isWizard || $hasWand); // Output: bool(true)
var_dump(!$hasWand);             // Output: bool(true)
?>

Trong ví dụ này, chúng ta có một pháp sư không có cây đũa. Phép toán '&&' trả về false vì cả hai điều kiện không phải đều đúng. Phép toán '||' trả về true vì ít nhất một điều kiện là đúng. Phép toán '!' đảo ngược giá trị sự thật.

Các phép toán gán trong PHP

Các phép toán gán là như pháp thuật "Accio" - chúng triệu hồi các giá trị vào các biến. Phép toán gán cơ bản là '=', nhưng PHP có một số mẹo để làm cho cuộc sống của chúng ta dễ dàng hơn.

Dưới đây là bảng các phép toán gán:

Phép toán Ví dụ Tương đương với
= $a = $b $a = $b
+= $a += $b $a = $a + $b
-= $a -= $b $a = $a - $b
*= $a *= $b $a = $a * $b
/= $a /= $b $a = $a / $b
%= $a %= $b $a = $a % $b
.= $a .= $b $a = $a . $b

Hãy xem chúng trong hành động:

<?php
$spellPower = 10;
$spellPower += 5; // $spellPower bây giờ là 15
echo $spellPower . "\n";

$spellName = "Lumos";
$spellName .= " Maxima"; // $spellName bây giờ là "Lumos Maxima"
echo $spellName;
?>

Phép toán '+=' cộng vào biến và gán kết quả trở lại vào nó. Phép toán '.=' đặc biệt cho chuỗi - nó nối (kết hợp) các chuỗi với nhau.

Các phép toán chuỗi trong PHP

Nói về chuỗi, PHP có một số phép toán đặc biệt chỉ dành cho việc làm việc với văn bản. Chỉ có hai, nhưng chúng rất mạnh mẽ:

Phép toán Tên Ví dụ Kết quả
. Nối $a . $b Kết hợp của $a và $b
.= Nối gán $a .= $b Thêm $b vào cuối $a

Hãy thực hiện một phép thuật chuỗi:

<?php
$firstName = "Harry";
$lastName = "Potter";
$fullName = $firstName . " " . $lastName;
echo $fullName . "\n"; // Output: Harry Potter

$greeting = "Hello, ";
$greeting .= $fullName;
echo $greeting; // Output: Hello, Harry Potter
?>

Phép toán '.' nối các chuỗi với nhau, trong khi phép toán '.=' thêm một chuỗi vào cuối một chuỗi hiện có. Đó như keo魔法 cho từ!

Các phép toán mảng trong PHP

Các mảng trong PHP là như các容器魔法 có thể giữ nhiều vật phẩm. PHP cung cấp các phép toán đặc biệt để làm việc với các容器 này:

Phép toán Tên Ví dụ Kết quả
+ Liên kết $a + $b Liên kết của $a và $b
== Bằng $a == $b Đúng nếu $a và $b có cùng key/value pairs
=== Tương đương $a === $b Đúng nếu $a và $b có cùng key/value pairs theo thứ tự và kiểu
!= Không bằng $a != $b Đúng nếu $a không bằng $b
<> Không bằng $a <> $b Đúng nếu $a không bằng $b
!== Không tương đương $a !== $b Đúng nếu $a không tương đương với $b

Hãy xem chúng hoạt động:

<?php
$spellBook1 = ["Lumos", "Expelliarmus"];
$spellBook2 = ["Accio", "Alohomora"];

$allSpells = $spellBook1 + $spellBook2;
print_r($allSpells);

$spellBook3 = ["Lumos", "Expelliarmus"];
var_dump($spellBook1 == $spellBook3);  // Output: bool(true)
var_dump($spellBook1 === $spellBook3); // Output: bool(true)
?>

Phép toán '+' liên kết các mảng, giữ các key từ bên trái nếu có trùng lặp. Các phép toán '==' và '===' so sánh các mảng, với '===' cũng kiểm tra thứ tự và kiểu của các phần tử.

Các phép toán điều kiện trong PHP

Đôi khi, chúng ta cần đưa ra các quyết định nhanh chóng trong mã của mình. Đó là khi phép toán điều kiện ba ngôi rất hữu ích. Nó như một câu lệnh if-else mini:

<?php
$isOfAge = 17;
$canUseWand = ($isOfAge >= 17) ? "Yes" : "No";
echo $canUseWand; // Output: Yes
?>

Phép toán này kiểm tra một điều kiện, trả về một giá trị nếu đúng và một giá trị khác nếu sai. Nó là một cách nhanh chóng để gán giá trị dựa trên điều kiện.

Các nhóm phép toán trong PHP

Để kết thúc chuyến hành trình魔法 của chúng ta, hãy phân loại các phép toán:

  1. Phép toán số học: +, -, *, /, %, **
  2. Phép toán gán: =, +=, -=, *=, /=, %=, .=
  3. Phép toán so sánh: ==, ===, !=, <>, !==, <, >, <=, >=, <=>
  4. Phép toán logic: and, or, xor, &&, ||, !
  5. Phép toán chuỗi: ., .=
  6. Phép toán mảng: +, ==, ===, !=, <>, !==
  7. Phép toán điều kiện: ?:

Thứ tự ưu tiên các phép toán trong PHP

Giống như trong toán học, các phép toán trong PHP có thứ tự ưu tiên. Điều này xác định trước phép toán nào sẽ được thực hiện trong một biểu thức phức tạp. Dưới đây là danh sách đơn giản về thứ tự ưu tiên, từ cao nhất đến thấp nhất:

  1. ** (Lũy thừa)
  2. ! (Logic NOT)
  3. *, /, % (Nhân, Chia, Modulo)
  4. +, - (Cộng, Trừ)
  5. <, <=, >, >= (So sánh)
  6. ==, !=, ===, !== (Đẳng thức)
  7. && (Logic AND)
  8. || (Logic OR)
  9. = (Gán)

Nhớ rằng bạn luôn có thể sử dụng dấu ngoặc để kiểm soát thứ tự thực hiện, giống như trong lớp toán!

Và thế là bạn đã hoàn thành bài học đầu tiên về phép toán magic trong PHP. Thực hành các phép thuật này... er, các phép toán, và sớm bạn sẽ viết mã như một chuyên gia! Nhớ rằng chìa khóa để thành thạo bất kỳ魔法 nào là sự thực hành và kiên nhẫn. Hãy tiếp tục thử nghiệm và đừng sợ hãi khi mắc lỗi - đó là cách chúng ta học và phát triển như các nhà lập trình. Cho đến bài học tiếp theo, hãy giữ vũ khí của bạn sẵn sàng và tâm trí mở để đón nhận những kỳ diệu của PHP!

Credits: Image by storyset