Biến PHP
- Trang trước Cú pháp PHP
- Trang tiếp theo PHP Echo / In
Tương tự như algebra
x=5 y=6 z=x+y
Trong algebra, chúng ta sử dụng các chữ cái (ví dụ: x) để lưu trữ giá trị (ví dụ: 5).
Từ biểu thức z=x+y trên, chúng ta có thể tính được giá trị của z là 11.
Trong PHP, ba ký tự này được gọi làBiến.
Ghi chú:Hãy coi biến là thùng chứa dữ liệu.
Biến PHP
Như trong algebra, biến PHP có thể được sử dụng để lưu trữ giá trị (x=5) và biểu thức (z=x+y).
Tên biến có thể rất ngắn (ví dụ: x và y), hoặc có thể lấy tên cụ thể hơn (ví dụ: carname, total_volume).
Quy tắc biến PHP:
- Biến bắt đầu bằng ký hiệu $ sau đó là tên biến
- Tên biến phải bắt đầu bằng chữ cái hoặc dấu gạch dưới
- Tên biến không thể bắt đầu bằng số
- Tên biến chỉ có thể chứa ký tự chữ số và dấu gạch dưới (A-z, 0-9 và _)
- Tên biến nhạy cảm với dấu cách ( $y và $Y là hai biến khác nhau)
Ghi chú:Tên biến PHP nhạy cảm với dấu cách!
Tạo biến PHP
PHP không có lệnh tạo biến.
Biến sẽ được tạo ra khi lần đầu tiên gán giá trị cho nó:
Ví dụ
<?php $txt="Hello world!"; $x=5; $y=10.5; ?>
Sau khi thực hiện câu lệnh trên, biến txt sẽ lưu trữ giá trị Hello world!, biến x sẽ lưu trữ giá trị 5, biến y sẽ lưu trữ giá trị 10.5.
Ghi chú:Nếu giá trị bạn gán cho biến là văn bản, hãy bao quanh giá trị bằng dấu ngoặc kép.
PHP là một ngôn ngữ có tính chất lỏng lẻo về loại dữ liệu
Trong ví dụ trên, hãy chú ý rằng chúng ta không cần thông báo cho PHP về loại dữ liệu của biến.
PHP tự động chuyển đổi biến thành loại dữ liệu chính xác dựa trên giá trị của nó.
Trong các ngôn ngữ như C và C++ và Java, nhà phát triển phải khai báo tên và loại của biến trước khi sử dụng nó.
Khu vực hoạt động biến PHP
Trong PHP, bạn có thể khai báo biến ở bất kỳ vị trí nào trong script.
Khu vực hoạt động của biến là phần của mã script mà biến có thể được tham chiếu hoặc sử dụng.
PHP có ba loại khu vực hoạt động biến khác nhau:
- local (cục bộ)
- global (toàn cục)
- static (định dạng)
Khu vực hoạt động Local và Global
HàmNgoàiBiến được khai báo có khu vực hoạt động Global, chỉ có thể truy cập được ngoài hàm.
HàmTrongBiến được khai báo có khu vực hoạt động LOCAL, chỉ có thể truy cập được trong hàm.
Ví dụ dưới đây kiểm tra biến với khu vực hoạt động cục bộ và toàn cục:
Ví dụ
<?php $x=5; // Khu vực hoạt động toàn cục function myTest() { $y=10; // Khu vực hoạt động cục bộ echo "<p>Thử biến trong hàm:</p>"; echo "Biến x là: $x"; echo "<br>"; echo "Biến y là: $y"; } myTest(); echo "<p>Thử biến ngoài hàm:</p>"; echo "Biến x là: $x"; echo "<br>"; echo "Biến y là: $y"; ?>
Trong ví dụ trên, có hai biến $x và $y, và một hàm myTest(). $x là biến toàn cục, vì nó được khai báo ngoài hàm, trong khi $y là biến cục bộ, vì nó được khai báo trong hàm.
Nếu chúng ta xuất giá trị của hai biến trong hàm myTest(), $y sẽ xuất giá trị được khai báo tại địa điểm bản địa, nhưng không thể xuất giá trị của $x, vì nó được tạo ra ngoài hàm.
Sau đó, nếu xuất giá trị của hai biến trong ngoài hàm myTest(), sẽ xuất giá trị của $x, nhưng không xuất giá trị của $y, vì nó là biến cục bộ và được tạo ra trong hàm myTest().
Ghi chú:Bạn có thể tạo các biến cục bộ có tên trùng nhau trong các hàm khác nhau, vì biến cục bộ chỉ có thể được nhận diện bởi hàm tạo ra nó.
Từ khóa global của PHP
Từ khóa global được sử dụng để truy cập biến toàn cục trong hàm.
Để làm điều này, hãy sử dụng từ khóa global trước biến (trong hàm):
Ví dụ
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // Xuất ra 15 ?>
PHP lưu trữ tất cả các biến toàn cục trong mảng có tên là $GLOBALS[index]. Điểm số lưu trữ tên biến. Mảng này cũng có thể truy cập được trong hàm và có thể được sử dụng để cập nhật trực tiếp biến toàn cục.
Ví dụ trên có thể được viết lại như sau:
Ví dụ
<?php $x=5; $y=10; function myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; } myTest(); echo $y; // Xuất ra 15 ?>
Từ khóa static của PHP
Thường thì khi hàm hoàn thành / thực hiện, tất cả các biến sẽ bị xóa. Tuy nhiên, có khi tôi cần không xóa một biến cục bộ nào đó. Để thực hiện điều này, cần thêm công việc.
Để làm điều này, hãy sử dụng static Từ khóa:
Ví dụ
<?php function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); ?>
Sau đó, mỗi khi hàm được gọi, thông tin được lưu trữ trong biến này là thông tin được chứa trong lần gọi cuối cùng của hàm.
Ghi chú:Biến này vẫn là biến cục bộ của hàm.
- Trang trước Cú pháp PHP
- Trang tiếp theo PHP Echo / In