Biến PHP trong thẻ kiểu

Đôi khi thật tiện lợi khi có thể có tên biến thay đổi. Đó là, một tên biến có thể được đặt và sử dụng động. Một biến bình thường được đặt với một câu lệnh như

Một biến biến lấy giá trị của một biến và coi đó là tên của một biến. Trong ví dụ trên, xin chào, có thể được sử dụng làm tên biến bằng cách sử dụng hai ký hiệu đô la. tôi. e

Tại thời điểm này, hai biến đã được xác định và lưu trữ trong cây biểu tượng PHP. $a với nội dung "hello" và $hello với nội dung "world". Vì vậy, tuyên bố này

tạo ra đầu ra chính xác giống như

i. e. cả hai đều sản xuất. Chào thế giới

Để sử dụng biến biến với mảng, bạn phải giải quyết vấn đề nhập nhằng. Nghĩa là, nếu bạn viết $$a[1] thì trình phân tích cú pháp cần biết liệu bạn có định sử dụng $a[1] làm biến hay bạn muốn $$a làm biến và sau đó chỉ mục [1] từ . Cú pháp để giải quyết sự mơ hồ này là. ${$a[1]} cho trường hợp đầu tiên và ${$a}[1] cho trường hợp thứ hai

Thuộc tính lớp cũng có thể được truy cập bằng cách sử dụng tên thuộc tính biến. Tên thuộc tính biến sẽ được giải quyết trong phạm vi mà cuộc gọi được thực hiện. Chẳng hạn, nếu bạn có một biểu thức chẳng hạn như $foo->$bar, thì phạm vi cục bộ sẽ được kiểm tra cho $bar và giá trị của nó sẽ được sử dụng làm tên của thuộc tính $foo. Điều này cũng đúng nếu $bar là truy cập mảng

Dấu ngoặc nhọn cũng có thể được sử dụng để phân định rõ ràng tên thuộc tính. Chúng hữu ích nhất khi truy cập các giá trị trong một thuộc tính có chứa một mảng, khi tên thuộc tính được tạo thành từ nhiều phần hoặc khi tên thuộc tính chứa các ký tự không hợp lệ (e. g. từ json_decode() hoặc SimpleXML)

Ví dụ #1 Ví dụ về thuộc tính biến

class foo {
    var $bar = 'I am bar.';
    var $arr = array('I am A.', 'I am B.', 'I am C.');
    var $r   = 'I am r.';
}

$foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->{$baz[1]} . "\n";

$start = 'b';
$end   = 'ar';
echo $foo->{$start . $end} . "\n";

$arr = 'arr';
echo $foo->{$arr[1]} . "\n";

?>

Ví dụ trên sẽ xuất ra


Tôi là quán bar.
Tôi là quán bar.
Tôi là quán bar.
Tôi là r.

Cảnh báo

Xin lưu ý rằng các biến biến không thể được sử dụng với các mảng Superglobal của PHP trong các hàm hoặc phương thức lớp. Biến $this cũng là một biến đặc biệt không thể tham chiếu động

Đây là một ví dụ về cách bạn có thể tạo tập lệnh để hiển thị và thay đổi --blue biến từ ví dụ được sử dụng trong các trang trước. Hiện tại, đừng lo lắng nếu bạn chưa quen với JavaScript. Bạn có thể tìm hiểu thêm về JavaScript trong Hướng dẫn JavaScript của chúng tôi

Thí dụ

Tự mình thử »


Hỗ trợ trình duyệt

Các số trong bảng chỉ định phiên bản trình duyệt đầu tiên hỗ trợ đầy đủ chức năng var()

Sau khi thực hiện các câu lệnh trên, biến $txt sẽ giữ giá trị Hello world!, biến $x sẽ giữ giá trị $foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->{$baz[1]} . "\n";
0 và biến $foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->{$baz[1]} . "\n";
1 sẽ giữ giá trị $foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->{$baz[1]} . "\n";
2

Ghi chú. Khi bạn gán một giá trị văn bản cho một biến, hãy đặt dấu ngoặc kép xung quanh giá trị

Ghi chú. Khác với các ngôn ngữ lập trình khác, PHP không có lệnh khai báo biến. Nó được tạo ngay khi bạn gán giá trị cho nó lần đầu tiên

Hãy nghĩ về các biến như các thùng chứa để lưu trữ dữ liệu


Một biến có thể có tên ngắn (như x và y) hoặc tên mô tả hơn (tuổi, carname, total_volume)

Quy tắc cho các biến PHP

  • Một biến bắt đầu bằng dấu $foo = new foo();
    $bar = 'bar';
    $baz = array('foo', 'bar', 'baz', 'quux');
    echo $foo->$bar . "\n";
    echo $foo->{$baz[1]} . "\n";
    3, theo sau là tên của biến
  • Tên biến phải bắt đầu bằng một chữ cái hoặc ký tự gạch dưới
  • Tên biến không được bắt đầu bằng số
  • Tên biến chỉ có thể chứa các ký tự chữ và số và dấu gạch dưới (A-z, 0-9 và _ )
  • Tên biến phân biệt chữ hoa chữ thường (_______14 và $foo = new foo();
    $bar = 'bar';
    $baz = array('foo', 'bar', 'baz', 'quux');
    echo $foo->$bar . "\n";
    echo $foo->{$baz[1]} . "\n";
    5 là hai biến khác nhau)

Hãy nhớ rằng tên biến PHP phân biệt chữ hoa chữ thường



Biến đầu ra

Câu lệnh PHP $txt0 thường dùng để xuất dữ liệu ra màn hình

Ví dụ sau sẽ cho thấy cách xuất văn bản và một biến

Ví dụ sau sẽ tạo ra kết quả tương tự như ví dụ trên

Ví dụ sau sẽ xuất ra tổng của hai biến

Ghi chú. Bạn sẽ tìm hiểu thêm về câu lệnh $txt0 và cách xuất dữ liệu ra màn hình trong chương tiếp theo


PHP là một ngôn ngữ được gõ lỏng lẻo

Trong ví dụ trên, hãy lưu ý rằng chúng ta không cần phải cho PHP biết biến đó thuộc kiểu dữ liệu nào.

PHP tự động liên kết kiểu dữ liệu với biến, tùy thuộc vào giá trị của nó. Vì các kiểu dữ liệu không được đặt theo nghĩa chặt chẽ, nên bạn có thể thực hiện những việc như thêm chuỗi vào số nguyên mà không gây ra lỗi

Trong PHP 7, khai báo kiểu đã được thêm vào. Điều này cung cấp một tùy chọn để chỉ định loại dữ liệu dự kiến ​​khi khai báo một hàm và bằng cách bật yêu cầu nghiêm ngặt, nó sẽ đưa ra "Lỗi nghiêm trọng" đối với loại không khớp

Bạn sẽ tìm hiểu thêm về các yêu cầu của $txt2 và $txt3 cũng như các khai báo kiểu dữ liệu trong chương Hàm PHP

Tôi có thể sử dụng biến PHP trong CSS không?

Tuy nhiên, chỉ với một lượng nhỏ mã php (6 dòng), bạn có thể sử dụng các biến trong css . Ví dụ: màu của "Văn bản tiêu đề" ở trên được quy định là "Xanh lam" bên trong biểu định kiểu xếp tầng, nhưng sau đó được xác định lại thành "Xanh lục" thông qua một biến php, được sử dụng bên trong một loại biểu định kiểu xếp tầng khác (xem bên dưới).

@$ var trong PHP là gì?

Trong PHP, $var được dùng để lưu trữ giá trị của biến như Số nguyên, Chuỗi, boolean, ký tự . $var là một biến và $$var lưu trữ giá trị của biến bên trong nó.

Biến $_ trong PHP là gì?

Một biến bắt đầu bằng ký hiệu $, theo sau là tên của biến . Tên biến phải bắt đầu bằng một chữ cái hoặc ký tự gạch dưới. Tên biến không được bắt đầu bằng số. Tên biến chỉ có thể chứa các ký tự chữ và số và dấu gạch dưới (A-z, 0-9 và _ )

Làm cách nào để tạo kiểu cho biến echo trong PHP?

Bạn có thể tạo kiểu cho nó theo cách sau. echo " $ip['cityName']. ""; . đỏ;'>". $ip['tên quốc gia'].