Thứ Tư, 11 tháng 9, 2013

Kiến thức cơ bản về PHP (phần 2)




Kiến thức cơ bản về PHP (phần 2)
3-Biến- Giá trị


PHP quy định một biến được biểu diễn bắt đầu bằng dấu $, sau đó là một chữ cái hoặc dấu gạch dưới.3.1 Một số biến đã được tạo sẵn :
argv : Mảng tham số truyền cho script. Khi đoạn script chạy bằng dòng lệnh, tham số này sẽ được dùng giống như C để truy nhập các tham số trên dòng lệnh.
argc : số các tham số đựoc truyền. Dùgn với argv;
PHP_SELF : tên cỷa đoạn mã script đang thực hiện. Nếu PHP đang được chạy từ dòng lệnh thì tham số này không có giá trj.
HTTP_COOKIE_VARS: một mảng các giá trị được truyền tới script hiện tại bằng HTTP cookie. Chỉ có tác dụng nếu “track_vars” trong cấu hình được đặt hoặc chỉ dẫn
HTTP_GET_VARS: Mảng các giá trị truyền tới script thông qua phương thức HTTP GET. Chỉ có tác dụng nếu “track_vars” trong cấu hình được đặt hoặc chỉ dẫn
HTTP_POST_VARS:
3.2 Phạm vi giá trị:

PHP coi 1 biến có một giới hạn. Để xác định một biến toàn cục (global) có tác dụng trong một hàm , ta cần khai báo lại. Nếu không giá trị của biến sẽ được coi như là cục bộ trong hàm.

$a = 1;
$b = 2;
Function Sum () {
global $a, $b;
$b = $a + $b;
}
Sum ();
echo $b;


Khi có khai báo global ở trên, $a và $b được cho biết đó là những biến toàn cục. Nếu không có khai báo global, $a và $b chỉ được coi là các biến bên trong hàm Sum(). Điều này khác với C
Một cách khác để dùng biến toàn cục trong 1 hàm là ta dung mảng $GLOBAL của PHP
VD ở trên sẽ có thể viết như sau:

$a = 1;
$b = 2;
Function Sum () {
$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
}
Sum ();
echo $b;


Một chú ý khác là khai báo static. Với khai báo này bên trong một hàm với 1 biến cục bộ, giá trị của biến cục bộ đó sẽ không bị mất đi khi ra khỏi hàm.
VD :

Function Test () {
static $a = 0;
echo $a;
$a++;
}


Với khai báo như trên , $a sẽ không mất đi giá trị sau khi thực hiện lơi gọi hàm Test() mà $a sẽ được tăng lên 1 sau mỗi lần gọi hàm Test().
3.3 Tên biến:
Một biến có thể gắn với 1 cái tên .

$a = “hello”;
$a = “world”;
==> $hello = “world”




echo “$a ${$a}”;
<==> echo “$a $hello”;


Kết quả ra sẽ là : hello world
Chú ý : bạn có thể gặp phải trường hợp không rõ ràng khi sử dụng cách này với mảng . VD : $a[1] sẽ hiểu là bạn muốn dùng $a[1] như 1 biến hay dùng $a như 1 biến với [1] là chỉ số?
Để tránh trường hợp này , cần có sựu phân biệt rõ bằng dấu { }. VD :${$a[1]} hoặc ${$a}[1].
4. CONSTANTS

PHP định nghĩa sẵn một vài hằng số:
_FILE_ : tên của script file đang được thực hiện.
_LINE_ : số dòng của mã script đang được thực hiện trong script file hiện tại.
_PHP_VERSION_ : version của PHP
_PHP_Ó : tên hệ điều hành mà PHP đang chạy
TRUE
FALSE
E_ERROR : báo hiệu có lỗi
E_PARSE : báo lỗi sai khi biên dịch
E_NOTICE : Một vài sự kiện có thể là lỗi hoặc không.
E_ALL :
Có thể định nghĩa một hằng số bằng hàm define()
VD :

define(”CONSTANT”, “Hello world.”);
echo CONSTANT; // outputs “Hello world.”
?>

Không có nhận xét nào:

Đăng nhận xét