Các loại biểu thức trong PHP
Các biến trong PHP được biểu thị bằng ký hiệu đô la theo sau là tên của biến. Tên biến phân biệt chữ hoa chữ thường Show
PHP hỗ trợ tám kiểu nguyên thủy
// Integers: decimal, octal or hexadecimal $Var = 123; // Floating point $Var = 1.3e4; // Arrays or vectors $Var[2] = 123; // Text Strings $Var = "A Text String\n"; // Objects $Var = new oMyClass(); Phạm vi của một biến là bối cảnh trong đó nó được xác định hằng sốHằng số là một mã định danh (tên) cho một giá trị đơn giản. Giá trị đó không thể thay đổi trong quá trình thực thi tập lệnh. Hằng số phân biệt chữ hoa chữ thường theo mặc định. Theo quy ước, định danh hằng luôn là chữ hoa Có hai hằng số dựng sẵn, Biểu thứcBiểu thức là viên đá xây dựng quan trọng nhất của PHP. Các dạng cơ bản nhất của biểu thức là hằng và biến Một loại biểu thức rất phổ biến là biểu thức so sánh. Những biểu thức này ước tính hoặc là Với những gì bạn đã học cho đến nay, bạn có thể gán dữ liệu cho các biến và thậm chí bạn có thể điều tra và thay đổi kiểu dữ liệu của một biến. Tuy nhiên, một ngôn ngữ lập trình không hữu ích lắm, trừ khi bạn có thể thao tác với dữ liệu bạn đã lưu trữ. Toán tử là các ký hiệu được sử dụng để thao tác dữ liệu được lưu trữ trong các biến, để có thể sử dụng một hoặc nhiều giá trị để tạo ra một giá trị mới hoặc để kiểm tra tính hợp lệ của dữ liệu nhằm xác định bước tiếp theo trong một điều kiện, v.v. Một giá trị được thao tác bởi một toán tử được gọi là toán hạng Trong ví dụ đơn giản này, hai toán hạng được kết hợp với một toán tử để tạo ra một giá trị mới (4 + 5) Các số nguyên 4 và 5 là toán hạng. Toán tử cộng (+) hoạt động trên các toán hạng này để tạo ra số nguyên 9. Các toán tử hầu như luôn nằm giữa hai toán hạng, mặc dù bạn sẽ thấy một vài ngoại lệ ở phần sau của chương này Tổ hợp toán hạng với một toán tử để cho ra kết quả được gọi là biểu thức. Mặc dù các toán tử và toán hạng của chúng tạo thành cơ sở của biểu thức, một biểu thức không nhất thiết phải chứa toán tử. Trên thực tế, một biểu thức trong PHP được định nghĩa là bất kỳ thứ gì có thể được sử dụng làm giá trị. Điều này bao gồm các hằng số nguyên như 654, các biến như $user và các lệnh gọi hàm như gettype(). Ví dụ, biểu thức (4 + 5) bao gồm hai biểu thức (4 và 5) và một toán tử (+). Khi một biểu thức tạo ra một giá trị, nó thường được gọi là giải quyết giá trị đó. Nghĩa là, khi tất cả các biểu thức con được tính đến, biểu thức có thể được coi như thể nó là một mã cho chính giá trị đó. Trong trường hợp này, biểu thức (4 + 5) có kết quả là 9 Bây giờ bạn đã hiểu rõ các nguyên tắc, đã đến lúc xem qua các toán tử thường được sử dụng trong lập trình PHP Toán tử gánBạn đã thấy toán tử gán được sử dụng mỗi khi một biến được khai báo trong một ví dụ; . =. Toán tử gán lấy giá trị của toán hạng bên phải và gán nó cho toán hạng bên trái $name = "jimbo"; Biến $name hiện chứa chuỗi "jimbo". Cấu trúc này cũng là một biểu thức. Mặc dù thoạt nhìn có vẻ như toán tử gán chỉ thay đổi biến $name mà không tạo ra giá trị, nhưng trên thực tế, một câu lệnh sử dụng toán tử gán luôn phân giải thành một bản sao của giá trị của toán hạng bên phải. Như vậy echo $name = "jimbo"; in chuỗi "jimbo" ra trình duyệt đồng thời gán giá trị "jimbo" cho biến $name toán tử số họcCác toán tử số học thực hiện chính xác những gì bạn mong đợi—chúng thực hiện các phép toán số học. Bảng 5. 2 liệt kê các toán tử này cùng với các ví dụ về cách sử dụng và kết quả của chúng Bảng 5. 2. toán tử số họcNhà điều hành Tên Ví dụ Kết quả mẫu + Phép cộng 10+3 13 − phép trừ 10−3 7 / Phân công 3/10 3. 3333333333333 * Phép nhân 10*3 30 % mô đun 10%3 1 Toán tử cộng thêm toán hạng bên phải vào toán hạng bên trái. Toán tử trừ trừ toán hạng bên phải khỏi toán hạng bên trái. Toán tử chia chia toán hạng bên trái cho toán hạng bên phải. Toán tử nhân nhân toán hạng bên trái với toán hạng bên phải. Toán tử mô đun trả về phần còn lại của toán hạng bên trái chia cho toán hạng bên phải Toán tử nốiToán tử nối được biểu thị bằng một dấu chấm (. ). Coi cả hai toán hạng là chuỗi, toán tử này nối toán hạng bên phải với toán hạng bên trái. Vì thế "hello"." world" lợi nhuận "hello world" Lưu ý rằng khoảng cách kết quả giữa các từ xảy ra do có một khoảng trắng ở đầu trong toán hạng thứ hai ("thế giới" thay vì "thế giới"). Toán tử nối thực sự kết hợp hai chuỗi với nhau mà không cần thêm bất kỳ phần đệm nào. Vì vậy, nếu bạn cố nối hai chuỗi mà không có dấu cách ở đầu hoặc ở cuối, chẳng hạn như "hello"."world" bạn sẽ nhận được điều này như là kết quả của bạn "helloworld" Bất kể kiểu dữ liệu của toán hạng được sử dụng với toán tử nối, chúng được coi là chuỗi và kết quả sẽ luôn có kiểu chuỗi. Bạn sẽ thường xuyên gặp phép nối trong suốt cuốn sách này khi kết quả của một biểu thức thuộc loại nào đó phải được kết hợp với một chuỗi, như trong ________số 8_______Toán tử gán kết hợpMặc dù chỉ có một toán tử gán thực sự, PHP cung cấp một số toán tử kết hợp giúp biến đổi toán hạng bên trái và trả về kết quả, đồng thời sửa đổi giá trị ban đầu của biến. Theo quy tắc, các toán tử sử dụng toán hạng nhưng không thay đổi giá trị ban đầu của chúng, nhưng các toán tử gán kết hợp lại phá vỡ quy tắc này. Toán tử gán kết hợp bao gồm ký hiệu toán tử chuẩn theo sau là dấu bằng. Toán tử gán kết hợp giúp bạn tránh được rắc rối khi sử dụng hai toán tử trong hai bước khác nhau trong tập lệnh của mình. Ví dụ: nếu bạn có một biến có giá trị là 4 và bạn muốn tăng giá trị này lên 4 nữa, bạn có thể thấy $x = 4; $x = $x + 4; // $x now equals 8 Tuy nhiên, bạn cũng có thể sử dụng toán tử gán kết hợp (+=) để cộng và trả về giá trị mới, như minh họa ở đây $x = 4; $x += 4; // $x now equals 8 Mỗi toán tử số học, cũng như toán tử nối, cũng có một toán tử gán tổ hợp tương ứng. Bảng 5. 3 liệt kê các toán tử mới này và hiển thị ví dụ về cách sử dụng của chúng Bảng 5. 3. Một số toán tử gán kết hợpNhà điều hành Ví dụ Tương đương với += $x += 5 $x = $x + 5 −= $x −= 5 $x = $x − 5 /= $x /= 5 $x = $x / 5 *= $x *= 5 $x = $x * 5 %= $x %= 5 $x = $x % 5 = $x. = "kiểm tra" $x = $x. " Bài kiểm tra" Mỗi ví dụ trong Bảng 5. 3 biến đổi giá trị của $x sử dụng giá trị của toán hạng bên phải. Các lần sử dụng tiếp theo của $x sẽ đề cập đến giá trị mới. Ví dụ $name = "jimbo";0 Các toán tử này sẽ được sử dụng xuyên suốt các tập lệnh trong sách. Bạn sẽ thường xuyên thấy toán tử gán nối kết hợp khi bạn bắt đầu tạo văn bản động; Tự động tăng và giảm một biến số nguyênKhi viết mã trong PHP, bạn sẽ thường thấy cần phải tăng hoặc giảm một biến có kiểu số nguyên. Bạn thường sẽ cần phải làm điều này khi bạn đang đếm số lần lặp lại của một vòng lặp. Bạn đã học được hai cách để làm điều này—bằng cách tăng giá trị của $x bằng cách sử dụng toán tử cộng $name = "jimbo";1 hoặc bằng cách sử dụng toán tử gán kết hợp $name = "jimbo";2 Trong cả hai trường hợp, giá trị mới được gán cho $x. Bởi vì các biểu thức loại này là phổ biến, PHP cung cấp một số toán tử đặc biệt cho phép bạn cộng hoặc trừ hằng số nguyên 1 từ một biến số nguyên, gán kết quả cho chính biến đó. Chúng được gọi là toán tử tăng sau và giảm sau. Toán tử tăng sau bao gồm hai ký hiệu dấu cộng được thêm vào một tên biến $name = "jimbo";3 Biểu thức này tăng giá trị được đại diện bởi biến $x lên một. Sử dụng hai dấu trừ theo cùng một cách sẽ làm giảm biến $name = "jimbo";4 Nếu bạn sử dụng toán tử tăng sau hoặc giảm sau kết hợp với toán tử điều kiện, toán hạng sẽ chỉ được sửa đổi sau khi thao tác đầu tiên kết thúc $name = "jimbo";5 Trong trường hợp này, $y đầu tiên trở thành 6 (kết quả của 3 + 3) và sau đó $x được tăng lên Trong một số trường hợp, bạn có thể muốn tăng hoặc giảm một biến trong biểu thức kiểm tra trước khi thực hiện kiểm tra. PHP cung cấp các toán tử tăng trước và giảm trước cho mục đích này. Các toán tử này hoạt động giống như các toán tử tăng sau và giảm sau, nhưng chúng được viết bằng các ký hiệu cộng hoặc trừ trước biến $name = "jimbo";6 Nếu các toán tử này được sử dụng như một phần của biểu thức kiểm tra, thì việc tăng dần sẽ xảy ra trước khi thực hiện kiểm tra. Ví dụ: trong đoạn tiếp theo, $x được tăng lên trước khi nó được kiểm tra so với 4 $name = "jimbo";7 Biểu thức kiểm tra trả về false vì 4 không nhỏ hơn 4 Toán tử so sánhToán tử so sánh thực hiện kiểm tra so sánh bằng cách sử dụng toán hạng của chúng và trả về giá trị Boolean true nếu kiểm tra thành công hoặc sai nếu kiểm tra thất bại. Loại biểu thức này hữu ích khi sử dụng các cấu trúc điều khiển trong tập lệnh của bạn, chẳng hạn như câu lệnh if và while. Cuốn sách này đề cập đến các câu lệnh if và while trong Chương 6, “Các hàm điều khiển luồng trong PHP. ” Ví dụ: để kiểm tra xem giá trị chứa trong $x có nhỏ hơn 5 hay không, bạn có thể sử dụng toán tử nhỏ hơn như một phần của biểu thức của mình $name = "jimbo";8 Nếu $x chứa giá trị 3, biểu thức này sẽ có giá trị true. Nếu $x chứa 7, biểu thức chuyển thành false Bảng 5. 4 liệt kê các toán tử so sánh Bảng 5. 4. Toán tử so sánhNhà điều hành Tên Trả về Đúng Nếu Ví dụ ($x Là 4) Kết quả == tương đương Trái tương đương với phải $x == 5 SAI = không tương đương Trái không tương đương với phải $x. = 5 ĐÚNG VẬY === Giống hệt nhau Trái tương đương với phải và chúng cùng loại $x === 4 ĐÚNG VẬY không tương đương Trái tương đương với phải nhưng chúng không cùng loại $x === "4" SAI > Lớn hơn Trái lớn hơn phải $x > 4 SAI >= Lớn hơn hoặc bằng Trái lớn hơn hoặc bằng phải $x >= 4 ĐÚNG VẬY < Ít hơn Bên trái nhỏ hơn bên phải $x < 4 SAI <= Ít hơn hoặc bằng Bên trái nhỏ hơn hoặc bằng bên phải $x <= 4 ĐÚNG VẬY Các toán tử này được sử dụng phổ biến nhất với số nguyên hoặc số kép, mặc dù toán tử tương đương cũng được sử dụng để so sánh các chuỗi. Hãy chắc chắn để hiểu sự khác biệt giữa các toán tử == và =. Toán tử == kiểm tra tính tương đương, trong khi toán tử = gán giá trị. Ngoài ra, hãy nhớ rằng === kiểm tra tính tương đương liên quan đến cả giá trị và loại Tạo các biểu thức kiểm tra phức tạp với các toán tử logicToán tử logic kiểm tra sự kết hợp của các giá trị Boolean. Ví dụ: toán tử hoặc, được biểu thị bằng hai ký tự ống dẫn (. ) hoặc đơn giản là từ or, trả về giá trị Boolean true nếu toán hạng bên trái hoặc bên phải là true $name = "jimbo";9 Biểu thức này trả về true Toán tử and, được biểu thị bằng hai ký tự dấu và (&&) hoặc đơn giản là từ và, chỉ trả về giá trị Boolean true nếu cả toán hạng bên trái và bên phải đều đúng echo $name = "jimbo";0 Biểu thức này trả về giá trị Boolean sai. Không chắc là bạn sẽ sử dụng một toán tử logic để kiểm tra các hằng số Boolean vì sẽ hợp lý hơn khi kiểm tra hai hoặc nhiều biểu thức phân giải thành một hằng số Boolean. Ví dụ echo $name = "jimbo";1 trả về giá trị Boolean true nếu $x chứa giá trị lớn hơn 2 và nhỏ hơn 15. Dấu ngoặc đơn được sử dụng khi so sánh các biểu thức để làm cho mã dễ đọc hơn và để biểu thị mức độ ưu tiên của việc đánh giá biểu thức. Bảng 5. 5 liệt kê các toán tử logic Bảng 5. 5. Toán tử logicNhà điều hành Tên Trả về Đúng Nếu Ví dụ Kết quả || Hoặc Trái hay phải là đúng ĐÚNG VẬY. SAI ĐÚNG VẬY hoặc Hoặc Trái hay phải là đúng đúng hay sai ĐÚNG VẬY xor Xor Trái hoặc phải là đúng nhưng không phải cả hai đúng xor đúng SAI && Và Trái và phải là đúng đúng sai SAI Và Và Trái và phải là đúng đúng và sai SAI ! Không Toán hạng đơn không đúng ĐÚNG VẬY SAI Bạn có thể thắc mắc tại sao lại có hai phiên bản của cả toán tử hoặc và toán tử và đó là một câu hỏi hay. Câu trả lời nằm ở thứ tự ưu tiên của toán tử mà bạn sẽ kiểm tra tiếp theo ưu tiên điều hànhKhi bạn sử dụng một toán tử trong một biểu thức, công cụ PHP thường đọc biểu thức của bạn từ trái sang phải. Tuy nhiên, đối với các biểu thức phức tạp sử dụng nhiều toán tử, công cụ PHP có thể bị lạc hướng nếu không có hướng dẫn. Đầu tiên, hãy xem xét một trường hợp đơn giản echo $name = "jimbo";2 Không có chỗ cho sự nhầm lẫn ở đây—PHP chỉ cần thêm 4 vào 5. Nhưng còn đoạn sau, với hai toán tử echo $name = "jimbo";3 Điều này đưa ra một vấn đề. PHP có nên tìm tổng của 4 và 5, sau đó nhân nó với 2, cung cấp kết quả 18 không? . Tuy nhiên, PHP gán mức độ ưu tiên khác nhau cho các toán tử khác nhau và vì toán tử nhân có độ ưu tiên cao hơn toán tử cộng nên giải pháp thứ hai cho vấn đề là giải pháp đúng. 4 cộng với kết quả của 5 nhân với 2 Tuy nhiên, bạn có thể ghi đè quyền ưu tiên của toán tử bằng cách đặt dấu ngoặc đơn xung quanh biểu thức của mình. Trong đoạn sau, biểu thức cộng sẽ được đánh giá trước biểu thức nhân echo $name = "jimbo";4 Bất kể thứ tự ưu tiên của các toán tử trong một biểu thức phức tạp, bạn nên sử dụng dấu ngoặc đơn để làm cho mã của bạn rõ ràng hơn và tránh các lỗi như áp dụng thuế bán hàng cho tổng phụ sai trong tình huống giỏ hàng. Sau đây là danh sách các toán tử được đề cập trong chương này theo thứ tự ưu tiên (những toán tử có quyền ưu tiên cao nhất được liệt kê trước)
Như bạn có thể thấy, hoặc có mức độ ưu tiên thấp hơn. và và có mức ưu tiên thấp hơn &&, vì vậy bạn có thể sử dụng các toán tử logic có mức ưu tiên thấp hơn để thay đổi cách đọc một biểu thức kiểm tra phức tạp. Trong đoạn sau, hai biểu thức tương đương nhau, nhưng biểu thức thứ hai dễ đọc hơn nhiều echo $name = "jimbo";5 Tiến thêm một bước, đoạn sau còn dễ hơn echo $name = "jimbo";6 Tuy nhiên, cả ba ví dụ đều tương đương Thứ tự ưu tiên là lý do duy nhất mà cả && và and đều khả dụng trong PHP. Điều này cũng đúng với. và hoặc. Trong hầu hết các trường hợp, việc sử dụng dấu ngoặc đơn làm cho mã rõ ràng hơn và ít lỗi hơn so với mã tận dụng sự khác biệt về thứ tự ưu tiên của các toán tử này. Cuốn sách này sẽ có xu hướng sử dụng phổ biến hơn. và các toán tử &&, đồng thời dựa vào các câu lệnh trong ngoặc đơn để đặt quyền ưu tiên cho toán tử cụ thể Biểu thức PHP là gì?Biểu thức là khối xây dựng quan trọng nhất của PHP. Trong PHP, hầu hết mọi thứ bạn viết đều là một biểu thức. Cách đơn giản nhất nhưng chính xác nhất để xác định biểu thức là "bất kỳ thứ gì có giá trị". Các dạng cơ bản nhất của biểu thức là hằng và biến. Khi bạn nhập $a = 5 , bạn đang gán 5 thành $a.
Các loại biểu thức chính quy trong PHP là gì?PHP cung cấp hai bộ hàm biểu thức chính quy. . Biểu thức chính quy POSIX Biểu thức chính quy kiểu PERL Toán tử và biểu thức trong PHP là gì?Các toán tử gán PHP được được sử dụng với các giá trị số để ghi giá trị cho một biến . Toán tử gán cơ bản trong PHP là "=". Điều đó có nghĩa là toán hạng bên trái được đặt thành giá trị của biểu thức gán bên phải.
=== nghĩa là gì trong PHP?=== Toán tử. Toán tử này dùng để kiểm tra các giá trị đã cho và kiểu dữ liệu của nó có bằng nhau hay không . Nếu đúng thì trả về true, ngược lại trả về false. |