Chuong XXVII : Bài 4: Các toán tử

Bài 4: Các toán tử

Để thực hiện việc tính toán các giá trị trong PHP, ta sử dụng toán tử (operator).

1. Gán (assignment)

Toán tử gán (dấu =) được sử dụng hết sức đơn giản. Ví dụ:

PHP Code:

<?php
$a = 1;
$b = 1;
$c = “cool”;
?>
Sau ví dụ, biến $a và $b mang giá trị 1, $c mang giá trị “cool”.

Để cho ngắn gọn, thay vì phải mất 2 dòng khai báo $a và $b, ta có thể gộp:

PHP Code:

<?php
$a = $b = 1;
// Hoặc: $b = $a = 1;
?>
Kết quả vẫn đúng như mong đợi.

2. Toán tử số học (arithmetic)

Các toán tử này gồm có: + (cộng – addition), – (trừ – subtraction), * (nhân – multiplication), / (chia – division) và % (tính modul – modulus).

Ví dụ:

PHP Code:

<?php
$a = 10;
$b = 5;
$c = $a + $b; // $c = 15
$d = $c – $a; // $d = 5
$e = $a / $b; // $e = 2
$f = $e * $b; // $f = 10
$g = $a % $e; // $g = 0
?>
Ngoài ra, để sau khi tính toán, giá trị $a bằng $a nhân 2 chẳng hạn, thay vì viết $a = $a * 2; ta có thể viết ngắn gọn: $a *= 2;

Tương tự, có thể viết $a += 10; $a -= 1; $a /= 3; $a %= 1; Cấu trúc này rất giống C và C++, nên nếu bạn đã biết qua 2 ngôn ngữ này thì ko có gì phải bỡ ngỡ.

3. Toán tử so sánh (comparision)

Toán tử so sánh gồm những toán tử sau:

== Mang giá trị TRUE khi 2 vế mang cùng giá trị
=== Mang giá trị TRUE khi 2 vế mang cùng giá trị VÀ cùng kiểu
!= Mang giá trị TRUE khi 2 vế ko cùng giá trị
<> Mang giá trị TRUE khi 2 vế ko cùng giá trị
!== Mang giá trị TRUE khi 2 vế ko cùng giá trị HOẶC ko cùng kiểu
< Mang giá trị TRUE khi vế trái mang giá trị nhỏ hơn vế phải
> Mang giá trị TRUE khi vế trái mang giá trị lớn hơn vế phải
<= Mang giá trị TRUE khi vế trái mang giá trị nhỏ hơn hoặc bằng vế phải
>= Mang giá trị TRUE khi vế trái mang giá trị lớn hơn hoặc bằng vế phải

Ta sẽ viết là $a == $b, $a !== $b, $a > $b…

Ví dụ:

PHP Code:

<?php
“123” == 123      // Đúng
“123” === 123    // Sai
“123” === “123”  // Đúng
?>
Còn một loại toán tử so sánh nữa, được viết dưới dạng:

exp1 ? exp2 : exp3

Ví dụ:

PHP Code:

<?php
$a = ($b > 1) ? 2 : 1;
?>
Có thể giải thích như sau: Nếu $b > 1 thì $a mang giá trị 2, còn ko $a mang giá trị 1.

4. Toán tử logic (logical)

Gồm có:

&& Mang giá trị TRUE nếu cả 2 vế đều là TRUE
|| Mang giá trị TRUE nếu một trong 2 vế là TRUE
! Mang giá trị TRUE nếu vế có giá trị FALSE
xor Mang giá trị TRUE nếu có đúng 1 trong 2 vế là TRUE

Ta viết: $a && $b, $a xor $b…

Có thể dùng “and” thay cho && và “or” thay cho || cũng ko sao.

5. Toán tử bit (bitwise)

Toán tử để xử lý bit bao gồm:

& Phép And
| Phép Or
^ Phép Xor
~ Phép Not
<< Phép Shift Left
>> Phép Shift Right

Có thể viết $a >> 2, $b | $c,…

6. Toán tử dùng trong xâu

Để nối 2 xâu, ta dùng toán tử nối xâu (concatenation), biểu diễn bằng dấu chấm (.)

Ví dụ $a . $b, “Xâu” . “Một xâu khác”

Hiển nhiên có thể viết $a .= “Một xâu nào đó”

6. Toán tử dùng trong mảng

+ Gộp 2 mảng (union)
== So sánh bằng, mang giá trị TRUE nếu các phần tử của 2 mảng mang cùng khóa & giá trị (có thể thứ tự khác nhau)
!= hoặc <> Mang giá trị TRUE nếu các phần tử của 2 mảng ko cùng khóa & giá trị
=== So sánh bằng, mang giá trị TRUE nếu các phần tử của 2 mảng mang cùng khóa & giá trị & thứ tự giống nhau
!== Mang giá trị TRUE nếu 2 mảng ko giống hệt nhau (non-identical)

7. Các toán tử khác

Các toán tử khác có thể kể đến toán tử tự tăng (auto-increment) và tự giảm (auto-decrement), ký hiệu tương ứng là ++ và –.

Ví dụ $a++, $b–, –$c, ++$d

Một toán tử khác là toán tử @, cho phép PHP bỏ qua lỗi của một lần gọi hàm.

Ví dụ:

$test = @file(‘Bạn ko có quyền sờ đến file này’);

 

identical(UDS)

  1. Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: