Biến this trong PHP


PHP: Biến (Variable)
Các khóa học qua video:
Lập trình C Java C# SQL Server PHP HTML5-CSS3-JavaScript

Cũng giống với lập trình C và C++, PHP không có khái niệm TRUE và FALSE. Các  giá trị FALSE là những giá trị bằng 0 hoặc xâu rỗng, các giá trị TRUE là những giá trị còn lại.

Khi sử dụng biến chúng ta không cần khai báo kiểu.

Cách khai báo biến trong PHP:

$Tên_biến;

Hoặc:

$Tên_biến = Giá_trị;

Lưu ý rằng một biến trong PHP có thể nhận giá trị có kiểu bất kỳ.

Ví dụ:

$a = 1;  //$a là một biến kiểu integer

$a = 1.2;  //bây giờ $a là một biến kiểu double

$a = “A”;  //bây giờ $a lại là một biến kiểu string.

+ Nếu như thực hiện phép toán giữa biến có kiểu số và kiểu string, PHP sẽ coi chuỗi là một dãy số như sau:

$str = “222B Baker Street”;

Ta thấy biến $str có giá trị kiểu string, và nếu cộng số 3 với giá trị này thì:

$x = 3 + $str; //$x = 225

, khi đó biến $x nhận được giá trị 255 vì PHP đã cộng 3 với ba số đầu.

Nhưng nếu ta in giá trị của biến $str thì:

echo ($str); //print: “222B Baker Street”

Chú ý rằng các phép toán giữa số và chuỗi chỉ đúng khi ký tự đầu của chuỗi là số.

+ Ta cũng có thể làm thay đổi kiểu giá trị của một biến bằng cách ép kiểu

$a = 11.2; //biến $a có kiểu double

$a = (int)$a; //bây giờ $a có kiểu integer, giá trị là 11

$a = (double)$a; //bây giờ $a lại có kiểu double, giá trị là 11.0

$b = (string)$a; //biến $b có kiểu string, giá trị là “11”

Cũng cần biết rằng PHP tự động chuyển đổi kiểu rất tốt. Nếu thật sự cần thiết chúng ta mới phải dùng cách trên.

Các hàm làm việc với biến:

gettype():

Hàm này trả lại kiểu của một biến nào đó.

Giá trị trả về có thể là “integer”, “double”, “string”, “array”, “object”, “class” hoặc “unknown type” .

Ví dụ:

if(gettype($user_input) == “integer”){

$age = $user_input;

}

settype():

Hàm này ép kiểu cho một biến nào đó. Nếu thành công hàm trả về giá trị 1 (true), ngược lại là 0 (false).

Ví du:

$a = 7.5;

settype($a, “integer”);

if (settype($a, “array”)){

echo (“Conversion succeeded.“);

}

else{

echo (Conversion error.“);

}

isset() và unset():

Hàm isset() kiểm tra một biến đã được gán giá trị hay chưa, hàm unset() sẽ giải phóng bộ nhớ cho một biến nào đó.

Ví dụ:

$id = “323bb”;

if (isset($id)){

echo (“Dữ liệu đã được gán”);

}

else{

echo (“Dữ liệu chưa được gán”);

}

unset($id);

if(!isset($id)){

echo (“Dữ liệu đã được giải phóng”);

}

empty():

Cũng giống hàm isset(), hàm empty() sẽ trả về giá trị 1 (true) nếu một biến là rỗng và 0 (false) nếu ngược lại.

Đối với biến có kiểu số giá trị bằng 0 được coi là rỗng, biến kiểu string được coi là rỗng nếu xâu là xâu rỗng.

PHP cơ bản nhé. Trong PHP, không cần thiết phải khai báo thuộc tính mới có thể sử dụng được, dùng thoải mái vô tư.

class AnyClass {
    public function random() {
        $this->value = 100;
    }

    public function getValue() {
         return $this->value;
    } 
}

$wow = new AnyClass;
$wow->random();
echo $wow->getValue(); // 100

Mặc dù làm được thế này nhưng không nên dùng, nó là một bad practice. Tương lai PHP sẽ tìm cách bỏ chức năng này.

- Biến giúp người lập trình viên đơn giản hóa việc sử dụng một giá trị nhiều lần bằng cách gọi tên biến.

- Điển hình là hai đoạn mã bên dưới có chức năng giống nhau. Nhưng đoạn mã thứ hai lại ngắn gọn hơn vì thay vì phải gõ “Nguyễn Thành Nhân” ba lần thì ta chỉ cần gõ một lần để gán cho biến rồi sau đó gọi tên biến ba lần.

Họ tên là Nguyễn Thành Nhân";
	echo "

Giới tính của Nguyễn Thành Nhân là nam

"; echo "

Năm sinh của Nguyễn Thành Nhân là 1993

"; ?>
Họ tên là $name";
	echo "

Giới tính của $name là nam

"; echo "

Năm sinh của $name là 1993

"; ?>

- Ở ví dụ trên, “Nguyễn Thành Nhân” chỉ là một giá trị đơn giản, sau này bạn sẽ gặp những giá trị phức tạp hơn lên đến hàng trăm ký tự. Việc sử dụng biến lại càng trở nên hữu ích.

2) Cách khai báo biến

- Trong ngôn ngữ lập trình PHP, biến sẽ tự động được khai báo khi nó được gán giá trị.

- Cú pháp:

$tên biến = giá trị mà bạn muốn gán cho biến;

- Lưu ý:

  • Nếu giá trị mà bạn muốn gán cho biến là một chuỗi ký tự thì bạn phải đặt chuỗi ký tự đó bên trong cặp dấu nháy kép " " hoặc cặp dấu nháy đơn ' '
  • Nếu giá trị mà bạn muốn gán cho biến là một số thì bạn không cần đặt nó bên trong cặp dấu nháy kép hoặc cặp dấu nháy đơn.

- Để cập nhật giá trị cho biến thì ta chỉ cần gán một giá trị mới cho biến đó.

4) Quy tắc đặt tên biến

- Tên biến là một tập hợp gồm một hoặc nhiều ký tự.

- Tên biến có thể chứa các ký tự trong danh sách bên dưới:

Các chữ cái in hoaA, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, ZCác chữ cái thườnga, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, zCác chữ số0, 1, 2, 3, 4, 5, 6, 7, 8, 9Dấu gạch dưới_

- Tên biến tuyệt đối không được phép chứa các ký tự đặt biệt (Ví dụ như: @, #, !, %, ^, &, ....)

- Tên biến không được bắt đầu bằng một chữ số.

Một số ví dụ đặt tên biến đúng quy tắcMột số ví dụ đặt tên biến sai quy tắcw
webcoban
Webcoban
webCobAn
we9co3an
_webc_oban9webcoban (sai vì bắt đầu bằng chữ số)
web%^coban (sai vì chứa ký tự đặc biệt)

- Tên biến có phân biệt trường hợp chữ in hoa và chữ thường (Ví dụ, webcoban và Webcoban là hai biến khác nhau)

- Tên biến phải duy nhất (không được khai báo một biến có tên trùng với tên của một biến đã được khai báo trước đó)