Hướng dẫn dùng string variable trong PHP

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.

Ví dụ:

echo empty[$new] ; //true

$new = 1;

echo empty[$new]; //false

$new = “”;

echo empty[$new]; //true

$new = 0;

echo empty[$new]; //true

$new = “So 323”;

echo empty[$new]; //false

unset[$new];

echo empty[$new]; //true

Bài này sẽ giới thiệu biến [variable] và hằng [constant] trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

Nội dung chính

  • 2. Phạm vi [scope] của biến trong PHP
  • 2.1. Biến global [global variable]
  • 2.2. Biến local [local variable]
  • 2.3. Biến static [static variable]
  • 3. Hằng [constant] trong PHP

Một biến [variable] là nơi lưu trữ dữ liệu. Khi tạo ra một biến, PHP sẽ lưu trữ tên biến tương ứng với giá trị của biến. Bộ nhớ của biến sẽ được Zend Engine quản lý nên chúng ta không cần quan tâm về vùng nhớ lưu trữ giá trị của biến.

Trong PHP, một biến bắt đầu với ký tự $ và theo sau là tên biến.


Khi các câu lệnh ở trên được thực thi, biến $domainame sẽ giữ giá trị gochocit.com, biến $x sẽ giữ giá trị 1, biến $y sẽ giữ giá trị 5. Trong PHP, một biến được tạo ra ngay lúc gán giá trị cho biến, không cần khai báo tên biến rồi sau đó mới gán giá trị cho biến. Cách đặt tên biến trong PHP tuân theo quy tắc đặt tên định danh [identifier].

Trong PHP, khi tạo ra một biến thì không cần chỉ rõ kiểu dữ liệu của biến. PHP sẽ tự động xác định kiểu dữ liệu của biến dựa vào giá trị của biến đó.

Câu lệnh echo thường được sử dụng để xuất giá trị của biến trong PHP.


Kết quả
I love Gochocit.com!
I love Gochocit.com!
6

2. Phạm vi [scope] của biến trong PHP

Biến có thể được tạo ra ở bất cứ đâu trong PHP script. Phạm vi [scope] của biến thể hiện phạm vi mà biến có thể được sử dụng.

Trong PHP, có 3 loại biến với 3 phạm vi sử dụng khác nhau:

    • Biến local
    • Biến global
    • Biến static

2.1. Biến global [global variable]

Biến global được tạo ra bên ngoài một hàm [function]. Biến global chỉ được sử dụng bên ngoài hàm [function].


Kết quả
Warning: Undefined variable $domainname in C:\xampp\htdocs\gochocit\index.php on line 6

Variable x inside function is:
Variable domainname outside function is: gochocit.com

2.2. Biến local [local variable]

Biến local được tạo ra bên trong một hàm [function]. Biến local chỉ được sử dụng bên trong hàm [function].


Kết quả
Variable domainame inside function is: gochocit.com

Warning: Undefined variable $domainame in C:\xampp\htdocs\gochocit\index.php on line 9

Variable domainname outside function is:

Lưu ý: Các biến local trong các hàm [function] khác nhau thì có thể có tên giống nhau. Bởi vì biến local chỉ có phạm vi sử dụng bên trong hàm chứa nó.

Sử dụng biến global trong một hàm [function]

Chúng ta có thể sử dụng từ khóa global để truy cập biến global trong một hàm.


Kết quả
6

PHP cũng lưu trữ các biến global trong một mảng [array] là $GLOBALS['name']. Trong đó, name là tên của biến global.


Kết quả
6

2.3. Biến static [static variable]

Thông thường, khi một hàm được gọi xong thì tất cả các biến local trong hàm đó sẽ bị xóa. Trong một số trường hợp, chúng ta không muốn biến local bị xóa thì chúng ta có thể sử dụng từ khóa static để khai báo một biến static.


Kết quả
0
1
2

Mỗi lần hàm welcome[] được gọi, biến $x vẫn còn lưu trữ giá trị từ lần gọi trước đó và giá trị được cập nhật ở mỗi lần gọi hàm.

Lưu ý: Biến static vẫn là biến cục bộ [local variable] của hàm [function].

3. Hằng [constant] trong PHP

Hằng [constant] cũng giống như biến [variable] nhưng giá trị của constant thì sẽ không thể thay đổi một khi đã gán giá trị cho nó. Trong PHP, chúng ta sử dụng hàm define[] để tạo ra một constant.

define[string $constant_name, mixed $value, bool $case_insensitive = false]: bool 

Trong đó,

  • $constant_namelà tên của hằng [constant]
  • $valuelà giá trị của hằng [constant]
  • $case-insensitive: chỉ định xem tên hằng [constant] có phân biệt chữ hoa, chữ thường hay không. Mặc định là false, có phân biệt hoa thường. Từ PHP 8.0.0, chỉ giá trị false được chấp chận, nếu truyền vào giá trị true sẽ nhận được warning.

Kết quả
gochocit.com
Warning: define[]: Argument #3 [$case_insensitive] is ignored since declaration of case-insensitive constants is no longer supported in C:\xampp\htdocs\gochocit\index.php on line 6
//www.facebook.com/gochocit

Từ PHP 7, giá trị [value] của hằng [constant] có thể là mảng [array].


Kết quả
lemon

Một hằng [constant] khi được tạo ra thì có phạm vi [scope] sử dụng là global và có thể được sử dụng ở bất kỳ đâu trong PHP script.


Kết quả
gochocit.com

Lưu ý: Hằng [constant] có thể được truy cập trong các hàm [function].

  • Sử dụng câu lệnh break và continue với cấu trúc vòng lặp trong PHP
  • Hàm khởi tạo [constructor] __init__[] của class trong Python
  • Lớp [class] và cách xây dựng lớp trong Java
  • Mảng một chiều là gì? Cách khai báo và khởi tạo trong C++
  • Các lệnh gán và nhập xuất cơ bản trong C++

Chủ Đề