XEM MỤC LỤC CÁC BÀI VIẾT PHP
Các biến là vật chứa thông tin.
Tạo (Khai báo) biến trong PHP Variables
Với PHP, 01
biến bắt đầu với dấu $, theo sau là tên biến:
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "Xin chào!";
$x = 5;
$y = 10.5;
echo $txt;
echo "<br>";
echo $x;
echo "<br>";
echo $y;
?>
</body>
</html>
<html>
<body>
<?php
$txt = "Xin chào!";
$x = 5;
$y = 10.5;
echo $txt;
echo "<br>";
echo $x;
echo "<br>";
echo $y;
?>
</body>
</html>
Sau khi thực thi các câu
lệnh trên, biến $txt sẽ có giá trị Xin chào!, biến $x sẽ
có giá trị là 5, và biến $y sẽ có giá trị 10.5.
Ghi chú:
Khi bạn gán 01 chuỗi vào 01
biến, đặt dấu ngoặc kép bao quanh giá trị.
Không giống các ngôn ngữ
khác , PHP không có lệnh tạo một biến. Nó được khởi tạo ngay khi lần đầu tiên
bạn gán giá trị.
Tóm lại, ta cứ hiểu các
biến là nơi lưu trữ dữ liệu.
Biến trong PHP
01 biến có thể có 01 tên
ngắn (như x và y) hoặc 01 tên dạng mô tả (Ví dụ: tuoi, hoten, tong_so).
01 số qui tắc đặt tên biến PHP:
· Bắt đầu là dấu $, theo sau là tên biến.
· Tên biến phải bắt đầu với 01 ký tự hoặc dấu gạch dưới _
· Tên biến không thể bắt đầu bằng 01 số.
· Tên biến có thể chỉ gồm chữ cái A-z, 0-9, và dấu _ )
· Tên biến có phân biệt HOA thường (Ví dụ: $tuoi và $TUOI là 02 biến khác nhau)
01 lần nữa hãy nhớ kỹ tên
biến PHP có phân biệt HOA thường!
Xuất giá trị biến
Câu lệnh echo trong PHP thường được sử dụng để xuất dữ liệu biến ra màn hình.
Ví dụ sau sẽ hiển thị cách xuất ra màn hình chuỗi và 01 biến:
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "Lophocvitinh.com";
echo "Tôi thíc $txt!";
?>
</body>
</html>
<html>
<body>
<?php
$txt = "Lophocvitinh.com";
echo "Tôi thíc $txt!";
?>
</body>
</html>
Ví dụ sau sẽ xuất
ra kết quả tương tự ví dụ trên:
<!DOCTYPE html>
<html>
<body>
<?php
$txt = "Lophocvitinh.com";
echo "Tôi thích " . $txt . "!";
?>
</body>
</html>
<html>
<body>
<?php
$txt = "Lophocvitinh.com";
echo "Tôi thích " . $txt . "!";
?>
</body>
</html>
Ví dụ sau sẽ xuất
giá trị tổng của 02 biến:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 4;
echo $x + $y;
?>
</body>
</html>
<html>
<body>
<?php
$x = 5;
$y = 4;
echo $x + $y;
?>
</body>
</html>
Ghi chú: Bạn
sẽ học thêm về câu lệnh echo và cách xuất dữ liệu ra màn hình trong bài tiếp
theo.
PHP là 01
ngôn ngữ không chặt chẽ về khai báo.
Trong ví dụ
trên, chú ý rằng chúng ta không phải khai
báo với PHP kiểu dữ liệu của biến.
PHP tự động
chuyển đổi biến sang kiểu dữ liệu thích hợp, tùy vào giá trị của nó.
Trong các
ngôn ngữ khác như C, C++, và Java, lập
trình viên phải khai báo tên và kiểu dữ liệu của biến trước khi sử dụng.
Phạm vi biến PHP
Trong PHP, các
biến có thể khai báo ở bất kỳ đâu trong đoạn mã.
Phạm vi của
01 biến là khu vực trong đoạn mã nơi biến có thể tham khảo/sử dụng.
PHP có 01
phạm vi dành cho biến:
local – cục bộ
global – toàn cục
static - tĩnh
Phạm vi Global và Local
01 biến
khai báo bên ngoài 01 hàm có phạm vi TOÀN CỤC (GLOBAL) và có thể chỉ được truy
cập bên ngoài hàm đó:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5; // phạm vi toàn cục-global
function myTest() {
// sử dụng biến x bên trong hàm này sẽ báo lỗi
echo "<p>Biến x bên trong hàm giá trị là: $x</p>";
}
myTest();
echo "<p>Biến x bên ngoài hàm giá trị là : $x</p>";
?>
</body>
</html>
<html>
<body>
<?php
$x = 5; // phạm vi toàn cục-global
function myTest() {
// sử dụng biến x bên trong hàm này sẽ báo lỗi
echo "<p>Biến x bên trong hàm giá trị là: $x</p>";
}
myTest();
echo "<p>Biến x bên ngoài hàm giá trị là : $x</p>";
?>
</body>
</html>
01 biến
khai báo bên trong 01 hàm có phạm vi
cục bộ (LOCAL) và chỉ có thể truy cập ở nội bộ bên trong hàm đó:
<!DOCTYPE html>
<html>
<body>
<?php
function myTest() {
$x = 5; // phạm vi nội bộ - local
echo "<p>Biến x bên trong hàm giá trị là: $x</p>";
}
myTest();
// sử dụng biến x bên ngoài hàm sẽ phát sinh lỗi
echo "<p>Biến x bên ngoài hàm giá trị là: $x</p>";
?>
</body>
</html>
<html>
<body>
<?php
function myTest() {
$x = 5; // phạm vi nội bộ - local
echo "<p>Biến x bên trong hàm giá trị là: $x</p>";
}
myTest();
// sử dụng biến x bên ngoài hàm sẽ phát sinh lỗi
echo "<p>Biến x bên ngoài hàm giá trị là: $x</p>";
?>
</body>
</html>
Bạn có thể
có các biến cục bộ local với trùng tên trong các hàm khác nhau, bởi vì các biến
cục bộ chỉ được nhận biết bởi hàm mà nó khai báo.
Từ khóa global trong PHP
Từ khóa global
được dùng để truy cập 01 biến toàn cục global từ bên trong hàm.
Để làm được
điều này, ta sử dụng từ khóa global đặt trước biến (bên trong hàm):
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
global $x, $y;
$y = $x + $y;
}
myTest(); // chạy hàm
echo $y; // xuất giá trị mới của biến $y
?>
</body>
</html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
global $x, $y;
$y = $x + $y;
}
myTest(); // chạy hàm
echo $y; // xuất giá trị mới của biến $y
?>
</body>
</html>
PHP cũng
lưu trữ tất cả biến toàn cục global trong 01 mảng gọi là $GLOBALS[index]
Các chỉ số của mảng lưu trữ tên biến.
Mảng này cũng có thể truy cập từ bên trong các hàm và có thể được sử dụng để cập nhật các biến toàn cục trực tiếp.
Các chỉ số của mảng lưu trữ tên biến.
Mảng này cũng có thể truy cập từ bên trong các hàm và có thể được sử dụng để cập nhật các biến toàn cục trực tiếp.
Ví dụ trên
có thể viết lại như sau:
<!DOCTYPE html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
?>
</body>
</html>
<html>
<body>
<?php
$x = 5;
$y = 10;
function myTest() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
?>
</body>
</html>
Từ khóa static trong PHP
Thông thường,
khi 01 hàm được hoàn thành/thực thi, tất cả biến của nó sẽ bị xóa.
Tuy nhiên, thỉnh thoảng chúng ta muốn 01 biến cục bộ local KHÔNG bị xóa.
Chúng ta cần nó cho 01 việc gì sau này.
Tuy nhiên, thỉnh thoảng chúng ta muốn 01 biến cục bộ local KHÔNG bị xóa.
Chúng ta cần nó cho 01 việc gì sau này.
Để làm điều
đó, ta sử dụng từ khóa static khi bạn lần đầu khai báo biến:
<!DOCTYPE html>
<html>
<body>
<?php
function myTest() {
static $x = 0;
echo $x;
$x++;
}
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
?>
</body>
</html>
<html>
<body>
<?php
function myTest() {
static $x = 0;
echo $x;
$x++;
}
myTest();
echo "<br>";
myTest();
echo "<br>";
myTest();
?>
</body>
</html>
Sau đó, mỗi
lần hàm được gọi, biến sẽ vẫn có thông tin mà nó chứa từ lần gọi cuối cùng của
hàm.
Ghi chú: biến
vẫn là biến cục bộ của hàm.
Nếu vẫn
chưa rõ các bạn xem thêm video clip sau:
By #drM
Nguồn: sưu tầm.
Không có nhận xét nào:
Đăng nhận xét