Extension:Variables/vi

Variables là một phần mở rộng rất đơn giản cho phép bạn định nghĩa một biến trong một trang viết, sử dụng nó sau vẫn trong trang đó, thay đổi giá trị của nó chẳng hạn, một giá trị trả về từ một biểu thức.

Nó rất giống một tiêu bản, có điều rất nhẹ và chỉ tồn tại trong một trang đơn lẻ, vì thế bạn có thể dùng rất nhiều biến trong một trang mà không lo làm ngập lụt wiki với số lượng khổng lồ các tiêu bản. Ngoài ra biến cũng có thể được sử dụng để đánh dấu trạng thái của một phần nào đó trong trang. Kết hợp với các hàm phân tích cú pháp để đạt kết quả cao nhất.

Phần mở rộng đơn giản "chết người" ;-) này được viết bởi Rob Adams, sau đó được phát hành trong phạm vi công cộng và được nhập khẩu vào MediaWiki phiên bản 1.8 bởi Hempel, phiên bản 1.10 bởi Rob Adams.

Chú ý: Các ví dụ sau đã được Việt hoá, để chạy thành công, xin hãy sử dụng đoạn mã Việt hoá như hướng dẫn ở đây hoặc xem trang tiếng Anh

Gán giá trị cho biến


Gán một giá trị giá trị cho biến tên biến (đã tồn tại hoặc định nghĩa mới).

Lấy giá trị của một biến
Giá trị của biến tên biến được trả về bằng lệnh:

Nếu chưa được định nghĩa, nó trả về một xâu rỗng mà không báo lỗi.

Ví dụ

 * Lưu ý rằng phần mở rộng ParserFunctions cũng cần thiết để sử dụng #expr

Tính 2*a + b:

Cộng 1 vào n:

ParserFunctions
Cần chú ý rằng mọi thứ trong các hàm điều kiện như #ifexpr đều được thực hiện (mặc dù chỉ một kết quả được trả về), bất chấp mọi điều kiện, xem ParserFunctions. Điều này cũng áp dụng với #gán. Thế nên:

trước tiên gán vào a giá trị 'b', sau đó là 'c' (kết quả là a chứa 'c'), bất kể điều kiện, trong khi

chỉ gán giá trị phù hợp.

Tương tự,

gán 'b' bất kể điều kiện, trong khi

gán giá trị 'b' tuỳ theo điều kiện (nếu điều kiện '...' không thoả mãn thì gán lại chính giá trị của a).

Control Structure Functions
Một cách khác để tránh hạn chế vừa đề cập là sử dụng phần mở rộng Control Structure Functions, cho phép trì hoãn sự phân tích cú pháp wiki thông qua việc sử dụng character escape sequences. Như vậy ví dụ đầu tiên ở trên trở thành::

Một cách khác, phần mở rộng Character Escapes có thể được sử dụng để tự động hoá chuỗi thoát:

Control Structure Functions cũng cho phép vòng lặp hỗ trợ chuỗi thoát. Mã lệnh là:

cho kết quả:


 * 0
 * 1
 * 2

Cài đặt
Chép đoạn này vào tệp $mediwikipath/extensions/Variables/Variables.php:

Chép đoạn này vào tệp $mediwikipath/extensions/Variables/Variables.i18n.php (đã được Việt hoá ):

Sau đó chèn vào cuối tệp LocalSettings.php.

Đọc thêm

 * Extension:DynamicFunctions
 * 7865 - Bật VariablesExtension trên các wiki của Wikimedia (trạng thái: wontfix)
 * Extension:Variables - tạo biến mới trên MediaWiki.
 * Extension:Control Structure Functions - ParserFunctions
 * Extension:Loops