Bài này gồm 3 phần chính:
Nội dung chính
- I. PHP core
- 1.1. Basic syntax
- 1.1.1. Variables & Operators
- 1.1.2. Control structures
- 1.1.3. Functions
- 1.2. Object oriented programming
- 1.2.1. Classes & Objects
- 1.2.2. Namespace
- 1.3. Access to Database
- 1.3.1. Choose API
- 1.3.2. Using MySqli
- 1.3.3. Using PDO
- II. Web development
- 2.1. Handling request
- 2.1.1. GET
- 2.1.2. POST
- 2.2. Cookies / Sessions
- 2.2.1. Cookies
- 2.2.2. Session
- III. Example
- PHP core: Giới thiệu về ngôn ngữ PHP.
- PHP in web development: Ứng dung PHP trong lập trình web cơ bản.
- PHP Example: Ví dụ về 1 web viết bằng PHP.
I. PHP core
1.1. Basic syntax
1.1.1. Variables & Operators
a. Array
– Mảng là 1 trong những thứ linh hoạt nhất trong PHP. Khai báo mảng bằng từ khoá array[].
– Mảng ở trong PHP có thể chứa nhiều kiểu dữ liệu khác nhau. Có
2 loại mảng sau trong PHP:
i. Mảng chỉ số – indexed array
Mảng 1 chiều:
– Khai báo:
$arr1 = array[“hello”, 5, true, “vcttai”];
– Truy cập: dùng chỉ số như thông thường
echo $arr1[2];
Mảng 2 chiều:
– Khai báo:
$arr2 = array[
array[“vcttai”, 23, “hcmc”],
array[“hqtoan”, 22, “hcmc”],
array[“httong”, 25, “hcmc”]
];
– Truy cập: dùng chỉ số
echo $arr2[1][2];
ii. Mảng kết hợp – associative array
–
Khai báo: dựa trên “key” => “value”
vd:
$age = array[
“vcttai” => 23,
“hqtoan” => 22,
“httong” => 25
];
– Truy cập: dùng key
vd: echo $age[‘vcttai’];
b. Data types – Variables – Operators
i. Data types – Kiểu dữ liệu
– PHP không quy định phải khai báo kiểu dữ liệu, PHP sẽ tự nhận biết.
vd:
$foo = ‘Hello !’; // string
$number = 123456; // number [integer]
$success = TRUE;
// boolean
ii. Variable – Biến
– Khai báo 1 biến bằng dấu “$”, không cần khai báo kiểu dữ liệu
vd:
$num1 = 243;
$str1 = “Hello”;
iii. Operators – Toán tử
1.1.2. Control structures
a. Include & Require
– Include và require dùng để ghép nối 2 file php riêng rẽ lại với nhau.
=> Trình biên dịch sẽ tự nối code 2 file lại và biên dịch
Công dụng:
–
Dùng để gom các phần code chung lại 1 file duy nhất, chỗ nào cần chạy thì include vào.
b. use
– Dùng để add tham chiếu thư viện, add tham chiếu file cần dùng.
vd: Cần sử dụng source code được định nghĩa ở file math_function.php
-> use math_function.php
c. Control structures
– Các cấu trúc điều khiển trong PHP tương tự như các ngôn ngữ lập trình khác, có cú pháp tương tự ngôn ngữ C, bao gồm:
i. Cấu trúc vòng
lặp:
++ For
++ while
++ do … while
++ foreach
ii. Cấu trúc điều kiện:
++ if … else
++ switch … case
1.1.3. Functions
a. Common functions
Là các hàm xây dựng sẵn của PHP được sử dụng nhiều.
i. Variable handling
1. var_dump[]
– Dùng để hiển thị thông tin về cấu trúc của 1 biến nào đó.
vd: var_dump[$a];
2. print_r[]
– Dùng để hiển thị
thông tin về 1 biến
vd: print_r[$a]
3. empty[]
– Hàm kiểm tra xem biến có rỗng hay không.
4. isset[]
– Kiểm tra 1 biến đã được set và khác NULL.
ii. String functions
1. htmlspecialchars []
– Dùng để convert các kí tự đặc biệt thành HTML entities. Hay dùng để escape chuỗi, phòng tránh lỗi tấn công XSS.
2. nl2br[]
– Chèn html tag
vào những chỗ xuống dòng trong chuỗi.
iii. Array functions
1.
array_key_exists[]
– Kiểm tra xem 1 key có tồn tại trong mảng hay không
2. unset[]
– Xoá 1 phần tử trong mảng
3. array_search[]
– Tìm trong mảng xem có tồn tại “value” nào đó hay không.
iv. Filesystem functions
1. file_exists — Checks whether a file or directory exists
2. fopen — Opens file or URL
3. fgets — Gets line from file pointer
4. fwrite — Binary-safe file write
5. file_get_contents — Reads entire file into a string
b. Functions
i. User-defined functions
– Để khai báo hàm trong PHP, ta dùng cú pháp sau:
function function_name[]
{
// body of function
}
hoặc
function function_name[$param1, $param2=’default’]
{
// body of function
// param2 is optional param with defaule value is ‘default’
}
ii. Global variable
– Có thể truy cập các biến của PHP một cách global bằng lệnh global
$num = 5;
function foo[]
{
echo “a\n”;
echo $num . “\n”; // execute[];
//Output: AC
1.2.2. Namespace
– Tham khảo:
//www.sitepoint.com/php-53-namespaces-basics/
//www.sitepoint.com/php-namespaces-import-alias-resolution/
//www.sitepoint.com/how-to-use-php-namespaces-part-3-keywords-and-autoloading/
1.3. Access to Database
1.3.1. Choose API
– PHP đưa ra 3 cách, tham khảo ở: //php.net/mysqlinfo.api.choosing
– Khuyến khích sử dụng mysqli, vì nó mới và hướng đối tượng.
1.3.2. Using MySqli
– //codular.com/php-mysqli
– //www.sanwebe.com/2013/03/basic-php-mysqli-usage
1.3.3. Using PDO
– //codular.com/php-pdo-how-to
II. Web development
2.1. Handling request
2.1.1. GET
– Sử dụng
$_GET[param_name] để lấy giá trị tham của tham số truyền đi bởi phương thức GET
vd:
======== hello.php ===========
PHP Test
Hello !
====================================
Truy cập vào trang hello.php với đường dẫn: //localhost/hello.php?name=Bop
========== result ==============
Hello Bop!
=====================
2.1.2. POST
– Sử dụng $_POST[param_name] để lấy giá trị tham của tham số truyền đi bởi phương thức POST
vd: bắt đầu truy cập từ form.php
========= form.php ================
PHP Test
Your name:
Your age:
==========================
=========form_action.php===========
PHP Test
Hi !
You are years old.
=======================
========== result ===============
Hi Bop!
You are 20 years old.
==========================
2.2. Cookies / Sessions
2.2.1. Cookies
– Tham khảo: //www.w3schools.com/php/php_cookies.asp
2.2.2. Session
– Tham khảo:
Short: //www.w3schools.com/php/php_sessions.asp
Full:
//www.phpro.org/tutorials/Introduction-To-PHP-Sessions.html
2.3. HTTP Header fields
III. Example
Vcttai