Hướng dẫn php twig - php cành
Giới thiệuTwig là một template engine cho PHP, được sử dụng trong rất nhiều framework khác nhau như Symfony, Drupal8, eZPublish, phpBB, Piwik, OroCRM và được hỗ trợ trong một vài framework khác, có thể kể đến Slim, Yii, Laravel, Codeigniter. Được thiết kế và phát triển dựa trên các nguyên tắc cơ bản của PHP dưới các tiêu chí : Fast, Secure, Flexible.Fast, Secure, Flexible. Cài đặtĐể cài đặt được Twig, phiên bản PHP của bạn phải là từ 5.2.7 trở lên. Có thể cài đặt Twig qua composer, rất đơn giản, chỉ cần gõ câu lệnh sau. 7 Hoặc bạn có thể tải trực tiếp từ trên git về . 8 Chúng ta có thể cài đặt thêm một số plugin trên IDE của mình để có thể làm việc hiệu quả hơn. Ví dụ như Sublime Text thì có thể cài Twig Bundle. Đây là một vài cách để chúng ta có thể sẵn sàng làm việc với Twig.Sử dụng cơ bảnTrong Twig, chúng ta sẽ sử dụng hai lọai kí hiệu, đó là {% ... %} dùng để thực hiện các câu lệnh như vòng lặp hoặc điều kiện. Kí hiệu tiếp theo đó là {{ ... }} dùng để in ra kết quả của biến hoặc biểu thức ra màn hình.{% ... %} dùng để thực hiện các câu lệnh như vòng lặp hoặc điều kiện. Kí hiệu tiếp theo đó là {{ ... }} dùng để in ra kết quả của biến hoặc biểu thức ra màn hình. Variables Twig hỗ trợ việc truy xuất các biến rất đơn giản, chỉ với dấu (.), chúng ta có thể lấy các giá trị của Object hoặc Array.
Trong trường hợp có kí tự đặc biệt, hàm attribute() có thể hỗ trợ chúng ta.
Với biến Global, chúng ta có thể sử dụng ở bất kì chỗ nào
Nếu cần thì bạn cũng có thể gán giá trị cho biến
Filters Đây là một thứ rất hay của Twig, nó có thể giúp chúng ta tùy biến kết quả được hiển thị. Number format lọc biến có giá trị number giống với hàm number_format của PHP.
Hoặc có thể sắp xếp một mảng ngay tại template.
Tham khảo thêm tại Filters. Named Arguments Từ phiên bản 1.12, Twig bắt đầu hỗ trợ named arguments.
Sử dụng named arguments giúp cho template của bạn rõ ràng hơn khi truyền vào các đối số.
Bạn cũng có thể cho phép bạn bỏ qua một số arguments mà bạn không muốn thay đổi giá trị mặc định.
Hoặc sử dụng cả hai kiểu trong một lần gọi
Functions Twig cũng hỗ trợ nhiều function cho chúng ta sử dụng, không hề khác với các ngôn ngữ lập trình nói chung. Hàm dump() sẽ giúp chúng ta debug đơn giản hơn.
Và rất nhiều hàm khác ở Twig function. Control Structure Các câu lệnh điều khiển trong Twig được sử dụng trong cặp dấu {% ... %}.{% ... %}. 0 1Comment Tất nhiên là mỗi dòng code chúng ta viết nên có ghi chú để có thể mai kia có thể hiểu được mình đã từng viết gì. 2Macros Macro có thể được so sánh với functions trong các ngôn ngữ lập trình, nó được dùng để tái sử dụng các đoạn HTML mà tránh sự lặp lại không đáng có. Một macro được định nghĩa qua macro tag. Ví dụ đơn giản về macro 3Chúng ta cũng có thể thiết lập các giá trị mặc định của tham số trong macro 4Để sử dụng Macro thì chỉ cần import vào là xong 5Bạn cũng có thể đổi tên cho macro đó khi import 6Expressions Twig cho phép sử dụng expressions ở bất kì chỗ nào. Nó rất giống với PHP và nếu bạn không biết gì về PHP, bạn vẫn có thể dễ dàng sử dụng nó. 7Mảng và đối tượng cũng có thể lồng vào nhau 8Biểu thức toán học : +, -, /, %, //, *, ** Biểu thức logic : and, or, not, (expr) Bạn cũng có thể kiểm tra một chuỗi bắt đầu hoặc kết thúc bằng một chuỗi con nào đó. 9Hoặc sử dụng biểu thức chính quy để đơn giản hóa 0Toán tử Containment sẽ trả về true nếu toán hạng bên trái nằm trong đối tượng bên phải 1Toán tử Test có thể sử dụng như một sự kiểm tra các biến 2Và có một vài toán tử khác, ví dụ như 3Template Nếu đã dùng Blade của Laravel thì bạn sẽ không lạ gì với các chức năng này. Twig hỗ trợ include các template khác 4Sẽ đơn giản hơn nếu bạn kế thừa các template khác khi phát triển sản phầm 5Có thể sử dụng lại nội dung từ các template cha nếu có nhu cầu. 6Twig cũng chỉ là một sản phẩm và tất nhiên sẽ có cả ưu và nhược điểm. Tuy nhiên chúng ta vẫn nên sử dụng để đơn giản hóa công việc khi phải thao tác với template. Và nếu có thể thì hãy đóng góp để Twig ngày một hoàn thiện hơn ^^. Tài liệu tham khảo http://twig.sensiolabs.org/documentation |