- PHP - Mở đầu
- PHP - Giới thiệu
- PHP - Cài đặt môi trường
- PHP - Cú pháp
- PHP - Các kiểu biến
- PHP - Hằng (Constant)
- PHP - Toán tử
- PHP - Điều khiển luồng
- PHP - Vòng lặp
- PHP - Chuỗi (String)
- PHP - Các khái niệm Web
- PHP - GET & POST
- PHP - File Inclusion
- PHP - File & I/O
- PHP - Hàm
- PHP - Cookie
- PHP - Session
- PHP - Gửi Email
- PHP - Upload File
- PHP - Chuẩn viết Code
- PHP - Biến được định nghĩa trước
- PHP - Regular Expression
- PHP - Xử lý lỗi
- PHP - Bug & Debug
- PHP - Date & Time
- PHP & MySQL
- PHP & AJAX
- PHP & XML
- PHP - Hướng đối tượng
- PHP cho lập trình viên C
- PHP cho lập trình viên PERL
- PHP - Giới thiệu Form
- PHP - Ví dụ Validation
- PHP - Complete Form
- PHP - Ví dụ về đăng nhập
- PHP - Đăng nhập Facebook
- PHP - Tích hợp Paypal
- PHP - Đăng nhập MySQL
- PHP - AJAX Search
- PHP - AJAX XML Parser
- PHP - AJAX Auto Complete Search
- PHP - Ví dụ AJAX RSS Feed
- PHP - Giới thiệu XML
- PHP - Simple XML
- PHP - Simple XML GET
- PHP - Ví dụ SAX Parser
- PHP - Ví dụ DOM Parser
- PHP - Frame Work
- PHP - Core PHP vs Frame Work
- PHP - Design Pattern
- PHP - Tổng hợp hàm
- Hơn 100 bài tập PHP cơ bản và nâng cao
- Học Java cơ bản và nâng cao
- Học C++ cơ bản và nâng cao
Cú pháp PHP
Trước khi bắt đầu lập trình với bất kỳ ngôn ngữ nào, thì cú pháp cơ bản và cấu trúc chương trình là phần rất quan trọng. Chương này giới thiệu cho bạn cú pháp PHP cơ bản, bao gồm: thẻ php, comment, lệnh print, lệnh echo, và so sánh hai lệnh print và echo.
Kỹ thuật "Escaping to PHP"
PHP Parser cần một cách để phân biệt PHP code với các phần tử khác trong trang. Kỹ thuật thực hiện điều này được biết với cái tên: "Escaping to PHP". Có 4 cách để làm điều này là:
Thẻ PHP chính tắc
Phong cách thẻ PHP hiệu quả và được sử dụng phổ biến nhất là:
<?php...?>
Nếu bạn sử dụng phong cách này, bạn có thể chắc chắn rằng các thẻ của bạn sẽ luôn luôn được thông dịch một cách chính xác.
Thẻ mở ngắn gọn (SGML-style)
Các thẻ này có dạng như sau:
<?...?>
Để sử dụng thẻ này bạn thực hiện 1 hoặc 2 việc sau để kích hoạt PHP để nhận ra các thẻ này:
Chọn tùy chọn cấu hình --enable-short-tags khi bạn đang xây dựng PHP.
Thiết lập cài đặt short_open_tag trong tệp php.ini thành on. Tùy chọn này phải vô hiệu hóa để phân tích cú pháp XML với PHP, bởi vì cú pháp tương tự được sử dụng cho các thẻ XML.
Thẻ ASP-style
Thẻ ASP-style bắt chước các thẻ được sử dụng bởi Active Server Pages để phác họa các khối code. Các thẻ ASP-style có dạng như sau:
<%...%>
Để sử dụng thẻ ASP-style, bạn sẽ cần thiết lập tùy chọn cấu hình trong tệp php.ini.
Thẻ HTML script
Thẻ script trong HTML có dạng như sau:
<script language="PHP">...</script>
Hiển thị văn bản trên trình duyệt - Lệnh print và lệnh echo
Trong PHP, bạn có thể sử dụng hai lệnh print và echo để in ra màn hình một chuỗi nào đó. Với các bạn mới học PHP thì hai lệnh này không khác nhau nhiều và bạn có thể sử dụng lệnh nào cũng được.
Ví dụ:
<html> <head> <title>Ví dụ chương trình PHP</title> </head> <body> <?php echo "Ví dụ minh họa lệnh echo! <br>"; print "Ví dụ minh họa lệnh print!"; ?> </body> </html>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
Bạn để ý trong phần code trên mình sử dụng <br> để xuống dòng. Nếu không sử dụng <br> thì hai dòng văn bản này sẽ được in liền nhau.
Nói cách khác, lệnh print và lệnh echo được sử dụng để định dạng phần HTML để hiển thị trên trình duyệt. Bạn có thể định dạng bất cứ điều gì bạn muốn bằng HTML trong hai lệnh này.
Ví dụ:
<?php echo "<p align='center'><font color='blue' size='25px'>Ví dụ lệnh echo trong PHP!</font></p>"; //hoặc print "<p align='center'><font color='red' size='25px'>Ví dụ lệnh print trong PHP!</font></p>"; ?>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả (mình thu nhỏ trình duyệt):
Bạn lưu ý là giá trị các thuộc tính được đặt trong dấu nháy đơn ('), còn nếu để hiển thị dấu nháy kép (" ") thì bạn phải sử dụng thêm dấu gạch chéo (\) đằng trước. Tương tự với cách ngắt dòng (với <br>), tiêu đề và đầu đề với các thẻ h1, h2, h3 ...
Ngoài ra bạn cũng có thể sử dụng lệnh print <<<EOF. Lệnh này sẽ in bất kỳ ký tự nào sau EOF lên trình duyệt, cho dù đó có là ký tự gì đi chăng nữa.
<?php print <<<EOF "Học PHP cơ bản và nâng cao tại AZCode!!!" EOF; ?>
Điểm khác nhau giữa lệnh print và lệnh echo
Trong PHP, về cơ bản thì hai lệnh này khá giống nhau, tuy nhiên đôi khi bạn cũng nên để ý đến hai điểm khác nhau sau:
Lệnh print là một hàm số, khi được thực thi nó sẽ trả về kết quả là 1, nếu không thì trả về kết quả 0. Do đó, bạn có thể gán kết quả của lệnh print này cho một biến, còn với lệnh echo thì không.
<?php $viet = print 'abcd'; $jack = echo 'cdef'; //sai ?>
Nếu chạy đoạn PHP trên sẽ cho một lỗi là Parse error: syntax error, unexpected 'echo' ...
Lệnh print chỉ có thể được sử dụng với một tham số, trong khi lệnh echo có thể được dùng với nhiều tham số.
<?php echo 'v','i','e','t'; //dùng với 4 tham số echo ('j'),('a'); //dùng được cả dấu ngoặc cho từng tham số print 'c'; //đúng print 'k','t'; //sai ?>
Commet trong PHP
Một comment là 1 phần của chương trình chỉ có tác dụng cho người đọc code và nó sẽ bị lược bỏ trước khi hiển thị kết quả chương trình. Có 2 kiểu comment trong PHP:
Comment đơn dòng − Nói chung, chúng thường được sử dụng cho các giải thích ngắn gọn hoặc các chú ý liên quan đến nội bộ code. Dưới đây là ví dụ về comment đơn dòng:
<?php # Đây là ví dụ của một comment # Ví dụ comment thứ hai // Một ví dụ về comment đơn dòng khác print "Ví dụ minh họa comment đơn dòng"; ?>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
Comment đa dòng − Được sử dụng để giải thích chi tiết khi cần thiết. Dạng comment này khá giống trong C. Đây là ví dụ về comment đa dòng.
<?php /* Ví dụ một comment đa dòng: Web: vietjack.com Mục đích: minh họa loại comment viết trên nhiều dòng Ngôn ngữ: PHP */ print "Ví dụ minh họa comment đơn dòng"; ?>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
PHP là không phân biệt khoảng trắng
Khoảng trắng là những thứ bạn gõ mà không hiển thị trên màn hình ví dụ như : dấu cách, dấu tab, hay xuống dòng (kết thúc một dòng kí tự).
PHP không phân biệt khoảng trắng, nghĩa là, sẽ không có vấn đề gì về việc có bao nhiêu ký tự whitespace bạn có trong một hàng. Một ký tự whitespace là tương tự như nhiều ký tự whitespace.
Ví dụ, các lệnh PHP sau sẽ gán tổng của 2 + 2 cho biến $four là tương đương nhau:
$four = 2 + 2; // các khoảng trắng đơn $four <tab>=<tab2<tab>+<tab>2 ; // khoảng trắng và tab $four = 2+ 2; // ví dụ một dòng code có thể được viết trên nhiều dòng
PHP là phân biệt kiểu chữ
PHP là ngôn ngữ phân biệt kiểu chữ (case sensitive). Bạn xét ví dụ sau:
<html> <body> <?php $vietjack = 98; print("Giá trị biến vietjack là: $vietjack<br>"); print("Giá trị biến AZCode là: $AZCode<br>"); ?> </body> </html>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
Lệnh trong PHP là các biểu thức được kết thúc bởi dấu chấm phảy (;)
Một lệnh trong PHP là bất kỳ biểu thức nào mà được theo sau bởi một dấu chẩm phảy (;). Bất kỳ dãy lệnh PHP hợp lệ nào mà được bao quanh bởi các thẻ PHP là một chương trình PHP hợp lệ. Dưới đây là một lệnh PHP đặc trưng sẽ gán một chuỗi ký tự cho một biến là $greeting:
$greeting = "Chào mừng bạn đến với PHP!";
Biểu thức là sự kết hợp của các token trong PHP
Các khối nhỏ nhất trong PHP là các token (mà không thể phân chia được nữa), ví dụ: các số (3.14159), các chuỗi (.two.), các biến ($two), hằng số (TRUE), và các từ đặc biệt mà tạo nên chính cú pháp của PHP như if, else, while, for, …
Dấu ngoặc ôm tạo các khối PHP
Mặc dù các lệnh không thể được kết hợp giống như các biểu thức, nhưng bạn luôn luôn có thể đặt một dãy các lệnh được bao quanh bởi các dấu ngoặc ôm ở bất cứ đâu để tạo các khối PHP.
Các lệnh PHP sau là tương đương:
if (3 == 2 + 1) print("Học PHP hay nhất tại AZCode.<br>"); if (3 == 2 + 1) { print("Học PHP"); print(" hay nhất tại AZCode.<br>"); }
Chạy PHP script từ dòng nhắc lệnh
Tất nhiên, bạn có thể chạy PHP script của bạn từ dòng nhắc lệnh (command prompt). Bạn xét nội dung sau có trong tệp test.php.
<?php echo "Hello World - Hello PHP!!!!!"; ?>
Bây giờ, chạy script này như là một command prompt như sau:
$ php test.php
Nó sẽ cho kết quả:
Hello World - Hello PHP!!!!!
Đến đây, hy vọng bạn đã hiểu cơ bản về cú pháp PHP cơ bản.
Các bài học PHP phổ biến khác tại AZCode: