Cách chính để lưu trữ thông tin trong chương trình PHP là sử dụng một biến.
Dưới đây là những điều quan trọng nhất cần biết về biến trong PHP.
$
.=
, với biến ở phía bên trái và biểu thức được đánh giá ở bên phải.PHP có tám kiểu dữ liệu mà chúng ta sử dụng để xây dựng các biến của mình:
Năm kiểu đầu tiên là các kiểu đơn giản và hai kiểu tiếp theo (mảng và đối tượng) là kiểu hỗn hợp - kiểu hỗn hợp có thể chứa các giá trị của các kiểu khác nhau, trong khi các kiểu đơn giản thì không thể.
Chúng ta sẽ tìm hiểu kiểu dữ liệu đơn giản trong chương này. Array và Object sẽ được trình bày ở một hướng dẫn khác.
Kiểu Integer trong PHP là các số nguyên, không có dấu thập phân, ví dụ: 4195. Chúng là kiểu đơn giản nhất. Chúng tương ứng với các số nguyên đơn giản, cả dương và âm.
Các số nguyên có thể được gán cho các biến hoặc chúng có thể được sử dụng trong các biểu thức, như dưới đây:
$int_var = 12345;
$another_int = -12345 + 12345;
Số nguyên có thể ở dạng thập phân (cơ số 10), bát phân (cơ sở 8) và định dạng thập lục phân (cơ sở 16).
Định dạng thập phân là mặc định, số nguyên bát phân được chỉ định bắt đầu bằng số 0
và hexadecimals bắt đầu bằng 0x
.
Đối với hầu hết các nền tảng phổ biến, số nguyên lớn nhất là (2 ** 31. 1) (hoặc 2.147.483.647) và số nguyên nhỏ nhất (âm nhất) là. (2 ** 31. 1) (hoặc .2,147,483,647).
Kiểu Double trong PHP là các số có dấu phẩy động, ví dụ: 3.14159 hoặc 49.1. Theo mặc định, hàm print sẽ chỉ in một chữ số ở sau dấu phẩy động của biến kiểu Double. Hãy xem ví dụ sau:
<?php
$many = 2.2888800;
$many_2 = 2.2111200;
$few = $many + $many_2;
print("$many + $many_2 = $few <br>");
?>
Đây là kết quả:
2.28888 + 2.21112 = 4.5
Kiểu Boolean trong PHP chỉ có hai giá trị là true hoặc false. PHP cung cấp một vài hằng số đặc biệt để sử dụng như kiểu Booleans: TRUE và FALSE, có thể được sử dụng như dưới đây
if (TRUE)
print("This will always print<br>");
else
print("This will never print<br>");
Dưới đây là các quy tắc để xác định giá trị Boolean của các kiểu dữ liệu khác:
false
nếu bằng 0
và ngược lại là true
.false
nếu chuỗi trống hoặc là chuỗi 0
và ngược lại là true
.false
.false
nếu nó không chứa các phần tử (mảng trống) và ngược lại là true
.true
(mặc dù một số chức năng trả về tài nguyên khi chúng thành công sẽ trả về false
khi không thành công).Mỗi biến sau đây đã được gán giá trị có thể sử dụng trong ngữ cảnh Boolean.
$true_num = 3 + 0.14159;
$true_str = "Tried and true"
$true_array[49] = "An array element";
$false_array = array();
$false_null = NULL;
$false_num = 999 - 999;
$false_str = "";
NULL là một kiểu đặc biệt chỉ có một giá trị: NULL. Để khai báo một biến giá trị NULL, chỉ cần gán nó như thế này:
$my_var = NULL;
Hằng số đặc biệt NULL được viết hoa theo quy ước, nhưng thực tế nó không phân biệt chữ hoa chữ thường; bạn cũng có thể sử dụng:
$my_var = null;
Một biến đã được gán NULL có các thuộc tính sau:
Kiểu String trong PHP là các chuỗi ký tự, ví dụ: "PHP hỗ trợ các thao tác chuỗi". Sau đây là các ví dụ hợp lệ của String:
$string_1 = "This is a string in double quotes";
$string_2 = 'This is a somewhat longer, singly quoted string';
$string_39 = "This string has thirty-nine characters";
$string_0 = ""; // a string with zero characters
Các chuỗi trong dấu nháy đơn là các chuỗi đơn thuần, trong khi các chuỗi trong dấu nháy đôi sẽ thay thế các biến bằng các giá trị của chúng và nó cũng biểu diễn các ký tự đặc biệt.
<?php
$variable = "name";
$literally = "My $variable will print!\n";
print($literally);
$literally = 'My $variable will not print!\n';
print($literally);
?>
Đây là kết quả:
My name will print!
My $variable will not print!\n
Như bạn thấy ở ví dụ trên, chuỗi nằm trong cặp dấu nháy đơn không có bất kỳ xử lý gì với biến $variable
và ký tự xuống dòng \n
, nó xem chúng như là những ký tự bình thường.
Trong khi đó chuỗi nằm trong cặp dấu nháy kép sẽ thay thế biến $variable
bằng giá trị của nó là "name" và hiển thị ký tự xuống dòng \n
khi được in.
Không có giới hạn về độ dài chuỗi, bạn có thể tạo các chuỗi dài tùy ý miễn là trong giới hạn cho phép của bộ nhớ.
Các chuỗi được phân tách bằng dấu nháy kép được xử lý trước bởi PHP theo cả hai cách sau:
$
) được thay thế bằng giá trị của chúng.Thay thế các ký tự đặc biệt như sau:
Bạn có thể gán nhiều dòng cho một biến chuỗi bằng cách sử dụng cú pháp heredoc:
<?php
$channel =<<<_XML_
<channel>
<title>What's For Dinner</title>
<link>http://menu.example.com/ </link>
<description>Choose what to eat tonight.</description>
</channel>
_XML_;
echo <<<END
This uses the "here document" syntax to output multiple lines with variable
interpolation. Note that the here document terminator must appear on a line with
just a semicolon. no extra whitespace!
END;
print $channel;
?>
Đây là kết quả:
This uses the "here document" syntax to output
multiple lines with variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
<channel>
<title>What's For Dinner<title>
<link>http://menu.example.com/<link>
<description>Choose what to eat tonight.</description>
Phạm vi có thể được định nghĩa là phạm vi tồn tại của một biến đối với chương trình mà nó được khai báo. Các biến PHP có thể là một trong bốn loại phạm vi sau:
Một biến được khai báo trong hàm được coi là biến cục bộ; do đó nó chỉ có thể được truy cập ở trong hàm đó.
Bất kỳ truy cập nào từ bên ngoài hàm đó sẽ được coi là một biến hoàn toàn khác với biến được khai báo trong hàm:
<?php
$x = 4;
function assignx () {
$x = 0;
print "\$x inside function is $x. <br />";
}
assignx();
print "\$x outside of function is $x. <br />";
?>
Đây là kết quả:
$x inside function is 0.
$x outside of function is 4.
Các tham số của hàm được khai báo bên trong dấu ngoặc đơn sau tên hàm. Chúng được khai báo giống như một biến thông thường như sau:
<?php
// multiply a value by 10 and return it to the caller
function multiply ($value) {
$value = $value * 10;
return $value;
}
$retval = multiply (10);
Print "Return value is $retval\n";
?>
Đây là kết quả:
Return value is 100
Ngược lại với biến cục bộ là biến toàn cục, một biến toàn cục có thể được truy cập trong bất kỳ phần nào của chương trình.
Tuy nhiên, để có thể sửa đổi giá trị thì một biến toàn cục phải được khai báo rõ ràng là toàn cục trong hàm mà nó sẽ được sửa đổi.
Điều này được thực hiện bằng cách đặt từ khóa GLOBAL
trước tên biến trong hàm. Hãy xem ví dụ sau:
<?php
$somevar = 15;
function addit() {
GLOBAL $somevar;
$somevar++;
print "Somevar is $somevar";
}
addit();
?>
Đây là kết quả:
Somevar is 16
Ngược lại với các biến được khai báo là tham số hàm sẽ bị hủy khi thoát khỏi hàm, biến tĩnh sẽ không mất giá trị khi hàm thoát và vẫn giữ giá trị đó nếu hàm được gọi lại.
Bạn có thể khai báo một biến là tĩnh chỉ bằng cách đặt từ khóa STATIC
trước tên biến.
<?php
function keep_track() {
STATIC $count = 0;
$count++;
print $count;
print "<br />";
}
keep_track();
keep_track();
keep_track();
?>
Đây là kết quả:
1
2
3
Quy tắc đặt tên một biến là:
$
và tiếp theo là một chữ cái hoặc ký tự gạch dưới.Không có giới hạn kích thước cho các biến.
Hướng dẫn lập trình PHP toàn tập sẽ giúp bạn từng bước tìm hiểu và nắm vững ngôn ngữ lập trình PHP.
Hướng dẫn cách truy xuất, lọc, sắp xếp dữ liệu MySQL trong PHP sử dụng MySQLi và PDO.
MySQL prepared statements trong PHP rất hữu ích để chống lại các cuộc tấn công SQL Injection.
Hướng dẫn này sẽ giúp bạn tìm hiểu cách thêm dữ liệu vào MySQL sử dụng MySQLi và PDO trong PHP.