CÚ PHÁP CĂN BẢN
Trang PHP là 1 trang HTML có nhúng mã PHP
Để minh hoạ cho điều này, ta hãy xem qua một số ví dụ sau:
Ví dụ 1: lưu file sau lên đĩa với tên vd1.php và chạy thử:
<html><head><title>Testing page</title></head>
<body><?php echo “Hello, world!”; ?></body>
</html>
Bạn sẽ nhận được 1 trang HTML mà khi view source bạn xẽ nhận được nội dung như sau:
<html><head><title>Testing page</title></head>
<body>Hello, World!</body>
</html>
Ví dụ 2: lưu file sau lên đĩa với tên vd2.php và chạy thử:
<?php echo “<html><head><title>Testing page</title></head>
<body>Hello, world!</body>
</html>”; ?>
Bạn cũng nhận được 1 trang HTML có source là:
<html><head><title>Testing page</title></head>
<body>Hello, World!</body>
</html>
Như vậy có thể nhận xét rằng 1 trang PHP cũng chính là 1 trang HTML có nhúng mã PHP ở bên trong và có phần mở rộng là .php. Phần mã PHP được đặt trong thẻ mở . Khi trình duyệt truy cập vào 1 trang PHP, server sẽ đọc nội dung file PHP lên, lọc ra các đoạn mã PHP, thực thi các đoạn mã đó, lấy kết quả xuất ra của các đoạn mã PHP thay thế vào chỗ ban đầu của chúng trong file PHP, cuối cùng server trả về kết quả cuối cùng là 1 trang nội dung HTML về cho trình duyệt.
Ở ví dụ 1 bên trên, server thực thi đoạn mã , đoạn mã này sẽ xuất ra dòng chữ Hello, world!, dòng chữ này sẽ được server thay thế ngược lại vào vị trí của đoạn mã PHP và trả về kết quả cuối cùng cho trình duyệt:
<html><head><title>Testing page</title></head>
<body>Hello, World!</body>
</html>
Như vậy thì ta hoàn toàn có thể tạo ra 1 file vd3.php với nội dung như sau:
<html><head><title>Testing page</title></head>
<body>Hello, World!</body>
</html>
Và file này vẫn chạy được ngon lành, không có vấn đề gì hết!
Lệnh echo dùng để xuất 1 chuỗi văn bản về trình duyệt
Ở các ví dụ bên trên, ta đã dùng 1 lệnh của PHP là lệnh echo. Lệnh này dùng để xuất 1 chuỗi văn bản về cho trình duyệt.
Ví dụ câu lệnh echo “Hello, world!”; trình duyệt sẽ nhận được chỗi văn bản Hello, world!.
Câu lệnh echo 1+2; sẽ trả về cho trình duyệt chỗi văn bản 3.
Và câu lệnh echo 1+2, “Hello, world!”; sẽ trả về trình duyệt chỗi 3Hello, world!.
Phân cách các lệnh bằng dấu chấm phảy (;)
Tương tự như các ngôn ngữ lập trình C hoặc Pascal, 1 câu lệnh của PHP được kết thúc bằng dấu chấm phảy (;).
Ví dụ:
echo 1+2;
echo “Hello, world!”;
Chú thích trong chương trình
Các chú thích không phải là mã chương trình, nhưng nó giúp ta ghi chú về 1 đoạn chương trình nào đó. Khi lập trình, bạn nên để các ghi chú vào trong chương trình để sau này khi đọc lại code, bạn sẽ nhanh chóng nắm bắt được nội dung và ý nghĩa của đoạn chương trình đã biết.
PHP cho phép ta ghi 2 loại chú thích: chú thích trên 1 dòng (chú thích loại này chỉ có thể ghi trên 1 dòng mà thôi), và chú thích nhiều dòng (chú thích loại này có thể ghi dài bao nhiêu cũng được).
Chú thích 1 dòng được bắt đầu bằng // hoặc #, và những gì được ghi từ đó về sau là chú thích. Chú thích nhiều dòng được bắt đầu bằng /* và kết thúc bằng */, những gì ở giữa là chú thích. Ví dụ:
<?php
//Đây là chú thích 1 dòng, đoạn chương trình sau sẽ in ra chuỗi 123
echo 123;
#Đây cũng là chú thích 1 dòng, đoạn chương trình sau sẽ in ra chuỗi abc
echo “abc”;
/*
Đây là chú thích nhiều dòng
Đoạn chương trình sau sẽ in ra chuỗi abc123
*/
echo “abc123”;
?>
KIỂU DỮ LIỆU
PHP hỗ trợ 8 kiểu dữ liệu chính:
4 kiểu dữ liệu vô hướng: boolean, integer, float (double), string.
2 kiểu dữ liệu tổ hợp: array, object.
2 kiểu dữ liệu đặt biệc: resource, NULL.
Kiểu Boolean
Kiểu boolean mang 1 trong 2 giá trị TRUE (đúng) hoặc FALSE (sai). Ví dụ:
<?php
$a = TRUE;
$b = FALSE;
//phép toán == kiểm tra xem 2 biểu thức có giá trị bằng nhau hay không
$c = (1==2); //vì 1 khác 2 nên $c mang giá trị FALSE
$d = (“abc” == “def”); //$d mang giá trị TRUE
?>
“Ép” kiểu sang boolean: một số giá trị được chuyển đổi thành FALSE trong các biểu thức boolean nếu như giá trị đó là:
- số nguyên 0,
- số thực 0.0,
- chuỗi rỗng “”, hoặc chuỗi “0”,
- mảng rỗng (không chứa phần tử nào) Array(),
- đối tượng không chứa phần tử nào (chỉ đúng với PHP4),
- giá trị NULL
Các giá trị còn lại sẽ được chuyển đổi thành TRUE.
Kiểu Integer
Kiểu integer mang các giá trị số nguyên …, -2, -1, 0, 1, 2, …Trên hầu hết các hệ thống, kiểu số nguyên có kích thước 32 bit, mang giá trị từ -2147483647 cho đến 2147483648. Ví dụ:
<?php
$a = 1234;
$b = -123;
$c = 0123; //giá trị 123 ở hệ cơ số 8, tương đương với 83 ở hệ cơ số 10
$d = 0x1F; //giá trị 1F ở hệ cơ số 16, tương đương với 31 ở hệ cơ số 10
?>
Kiểu Float (Double)
Kiểu float (hoặc double) là kiểu số thực, có thể mang bất cứ giá trị số thực nào. Trên hầu hết các hệ thống, kiểu số thực có kích thước 64 bit. Ví dụ:
<?php
$a = 1.234;
$b = 1.2e3; //= 1.2*10^3 = 1200
$c = 7E-10; //= 7*(10^-10) = 0.0000000007
$d = -1.23;
?>
Kiểu String
Kiểu string lưu giữ 1 chuỗi ký tự, mỗi ký tự có kích thước 1 byte. Nội dung string được đặt giữa 2 dấu nháy, nháy đơn (‘) hoặc nháy kép (“). Ví dụ
<?php
$a = ‘Đây là 1 chuỗi được đặt giữa dấu nháy đơn’;
$b = “Đây là 1 chuỗi được đặt giữa dấu nháy kép”;
$c = ‘Đây là 1 chuỗi được đặt giữa dấu nháy đơn với “vài dấu nháy kép ở giữa”‘;
$d = “Đây là 1 chuỗi được đặt giữa dấu nháy kép với ‘vài dấu nháy đơn ở giữa'”;
?>
Nếu bạn muốn sử dụng dấu nháy đơn ở trong 1 chuỗi được bọc bởi dấu nháy đơn, hoặc sử dụng dấu nháy kép đặt giữa chuỗi được bọc bởi dấu nháy kép thì bạn để thêm ký tự (gọi là ký tự escape) ở phía trước. Ví dụ:
<?php
$a = ‘Dấu ‘nháy đơn’ ở giữa chuỗi’; //$a mang giá trị: Dấu ‘nháy đơn’ ở giữa chuỗi
$b = “Dấu “nháy kép” ở giữa chuỗi”; //$b mang giá trị: Dấu “nháy kép” ở giữa chuỗi
$c = “Dùng ký tự \ ở giữa câu \ thì sao?”; //$c mang giá trị: Dùng ký tự ở giữa câu thì sao?
?>
Khi sử dụng dấu nháy đôi để bọc chuỗi, ngoài ‘, “ và \, PHP có thể nhận dạng thêm một số chuỗi ký tự escape đặt biệc nữa:
- n: ký tự xuống hàng LF (ký tự có mã 10 trong bảng mã ASCII)
- r: ký tự về đầu dòng CR (ký tự có mã 13 trong bảng mã ASCII)
- t: ký tự tab (ký tự có mã 9 trong bảng mã ASCII)
- $: ký tự $
- ooo: (với o là 1 chữ số từ 0 đến 7) biểu thị 1 ký tự có mã ASCII ooo trong hệ cơ số 8. Ví dụ 101 sẽ là ký tự ‘A’ (101 trong hệ cơ số 8 tương đương 65 trong hệ cơ số 10, ký tự ASCII có mã 65 chính là ký tự ‘A’).
- xhh: (với h là 1 chữ số từ 0 đến 9 hoặc 1 chữ cái từ A tời F) biểu thị 1 ký tự có mã ASCII hh trong hệ cơ số 16. Ví dụ