Phần này sẽ diễn tả có tác dụng cầm cố như thế nào nhằm tạo nên một trang Web new trong áp dụng của chúng ta với lời chào "Hello".Để dành được mục tiêu này. các bạn sẽ buộc phải tạo mới một action vàmột view:
Ứng dụng đang gửi đi các request trường đoản cú trang Web nhằm tới những actionvà action sẽ tạo bắt đầu View nhằm hiển thị lời xin chào "Hello" cho tới user.Bạn đang đọc: Bắt đầu: nâng cao
Thông qua bài khuyên bảo này, bạn sẽ nắm rõ tía điều:
Tạo Action ¶
Với trách nhiệm tạo ra thông điệp "Hello", bạn sẽ chế tác một action say, action này sẽ lấy các tđê mê số message tự request với hiển thị thông điệp quay trở lại user. Nếu request ko cung ứng tyêu thích số message, action vẫn mang định hiển thị thông điệp "Hello".
Lưu ý: Hành rượu cồn (Actions) là người tiêu dùng cuối có thể truy cập những đối tượng người sử dụng cùng thực hiện trực tiếp. Các Actions được nằm trong cỗ điều khiển và tinh chỉnh (controllers). Các công dụng của một action là người tiêu dùng cuối cùng nhận được các thông điệp.
Các Actions cần phải được knhị báo sống controllers. Để cho đơn giản và dễ dàng, chúng ta có thể knhị báoaction say sinh hoạt controller SiteController. Controller này được knhị báo làm việc vào lớp controllers/SiteController.php. Action new bắt buộc sản xuất nằm tại phần code sau:
namespace appcontrollers;use yiiwebController;class SiteController extends Controller // ...existing code... public function actionSay($message = "Hello") return $this->render("say", <"message" => $message>); Trong đoạn code trên, action say đinch nghĩa cách làm có tên là actionSay bên trong lớp SiteController.Yii áp dụng chi phí tố action nhằm sáng tỏ những cách tiến hành nằm trong action từ bỏ những cách làm chưa hẳn là action vào một lớp điều khiển.Tên ở sau action là chi phí tố ánh xạ tới những action"s ID.
Để phát âm được quy tắc khắc tên mang đến actions, quý khách phải phát âm bí quyết chuyển động Yii xử trí với những action IDs. Mỗi Action IDs luôn luôn là mọi ký kết từ bỏ hay. Nếu action ID đòi hỏi những tự, chúng ta sẽ nối phần đông tự đó bằng vết gạch ốp ngang (ví dụ, create-comment). Tên cách thức của action sẽ tiến hành ánh xa cho tới action IDs bởi vứt bỏ ngẫu nhiên vệt gạch ngang từ bỏ IDs, vệt gạch ngang được thêm vào trường đoản cú chữ cái in hoa thứ nhất trong mỗi từ, cùng từ bỏ đứng trước action. ví dụ như,cùng với action ID create-bình luận khớp ứng cho tới action có thủ tục tên là actionCreateComment.
Trong ví dụ này, cách thức của action nhấn ttê mê số $message, mặc đinh quý giá là "Hello" (Như bài toán bạn cũng có thể thiếtlập các giá trị mang định mang đến ngẫu nhiên tsay mê số cho những hàm hoặc thủ tục vào PHP). Mỗi Khi ứng dụngnhấn request với xác đinch là action chịu trách nát nhiệm mang lại giải pháp xử lý những từng trải là action say , ứng dungvẫn tàng trữ ttê mê số này với tên tsi mê số được search thấy trong request. Nói phương pháp khác, giả dụ request bao gồmtmê man số message theo thuộc với mức giá trị "Goodbye", thay đổi $message tương ứng vào action sẽ được gán giá trị.
Phương thức render() nằm trong mỗi action được điện thoại tư vấn nhằm trả về một viewmang tên là say. Tham mê số message luôn luôn luôn được gửi qua view giúp xem nó bao gồm được dùng hay là không. Kết trái việc render đượctiến hành trong những action. Ứng dụng đang nhận hiệu quả này với hiển thị cho tới user trên trình lưu ý (như là 1 trong những trang HTML đầy đủ).
Tạo bắt đầu View ¶
Views phụ trách việc hiển thị đọc tin với địa chỉ cùng với người tiêu dùng. Để tiến hành yêu câu hiển thịlời chào "Hello", bạn phải sinh sản một view say gồm chức năng hiển thị ttê mê số message, tmê man số này được nhận từ action gửi đến:
use yiihelpersHtml;?>= Html::encode($message) ?>Quý khách hàng đề xuất lưu trữ view say nằm tại đường truyền views/site/say.php. Mỗi khi cách thức render()được điện thoại tư vấn nghỉ ngơi action, nó vẫn tìm kiếm kiếm tập tin PHP nằm ở băng thông views/ControllerID/ViewName.php.
Lưu ý rằng, đoạn code trên, biến chuyển message đã được cách tiến hành HTML-encodedmã hóa trước khi được in ra. Việc mã hóa là cần thiết Khi gửi các tyêu thích số tới user, các tđê mê số này hoàn toàn có thể bị tiến công quaXSS (cross-site scripting) đó là chuyên môn tiến công bằng cách chèn cnhát những thẻ HTML hoặc đoạn mã JavaScript ô nhiễm và độc hại.
Xem thêm: Top 3 Phần Mềm Tách Nhạc Khỏi Video (Cập Nhật 2020), Top Phần Mềm Tách Nhạc Từ Video Siêu Nhanh
Tất nhiên, chúng ta có thể thêm các ngôn từ làm việc view say.Nội dung bao hàm các thẻ HTML, tài liệu văn phiên bản, với cũng có thể là các câu lệnh PHP..Trên thực tiễn, view say chỉ nên những đoạn mã PHPhường được tiến hành bởi vì phương thức render().Nội dung được gửi ra từ view sẽ tiến hành thân tặng ứng dụng (application) giống như các ý kiến tác dụng. Sau đó ứng dụng đã gửi công dụng tới user.
Trying it Out ¶
Sau Khi đã chế tạo ra action với view, chúng ta cũng có thể truy vấn vào trang vày Việc truy cập vào URL sau:
http://hostname/index.php?r=site/say&message=Hello+World
URL này sẽ trả về một trang cùng hiển thị lời chào "Hello World". Trang này còn có thuộc phần header và footer giống như những trang không giống trong vận dụng.
Nếu bạn không nhập tsay đắm số message vào URL, chúng ta chỉ coi thấy từng mẫu "Hello" được hiển thị. Bởi vì chưng tmê mẩn số message được trải qua phương thức actionSay(), cùng mọi khi tsay mê số này không được nhập,thì cực hiếm khoác đinch "Hello" sẽ tiến hành sửa chữa.
Lưu ý: Trang này có cùng phần header với footer giống như các trang không giống là bởi vì thủ tục render() vẫn auto nhúng câu chữ của view say vào trong 1 layout layout này nằm ở vị trí views/layouts/main.php.
Tsay mê số r sống bên trên URL sẽ tiến hành giải thích thêm. Nó là chuẩn đến cỗ định con đường route, từng vận dụng đã cung cấp IDkhớp ứng với từng action. Với những đinh dạng router ControllerID/ActionID. Lúc áp dụng dìm request, vận dụng đã khám nghiệm những tmê mệt số theo cùng request kia, áp dụng ControllerID để khẳng định lớp điều khiển nhằm xử các request. Sau kia, cỗ tinh chỉnh sẽxác dịnh ActionID rất cần được khởi tạo nên để xử trí công việc. Trong ví dụ này, route site/saysẽ gán (ám chỉ tới) cỗ điều khiển SiteController với action say. Như vậy sẽ có công dụng là, cách làm SiteController::actionSay() sẽ tiến hành Hotline nhằm xử trí các request.
Lưu ý: Giống nlỗi actions, ứng dụng áp dụng những định danh ID nhằm dìm diện các controller. Các Controller ID bao gồm luật lệ viết tên kiểu như cùng với những action IDs. Tên của controller được chuyển đổi trường đoản cú những controller IDs bởi câu hỏi đào thải vệt gạch ốp ngang từ bỏ đinc danh ID, tận dụng tối đa các chữ cái trước tiên trong mỗi tự, cùng từ đứng trước Controller. lấy một ví dụ, bộ điều khiển và tinh chỉnh controller ID có tên là post-comment sẽ tương ứng cùng với controller là PostCommentController.
Tổng kết ¶
Qua phần này, chúng ta đang thao tác với phần controller với view bên trong mẫu kiến tạo MVC.quý khách đang tạo nên một action thuộc phần của controller để xử lý các request . Và các bạn cũng đã tạo ra view cho bài toán ngừng ngôn từ trong thông điệp trả về . Trong ví dụ đơn giản dễ dàng này, không tồn tại Model được thực hiện nhằm thao tác dữ liệu cơ mà chỉ sử dụng tyêu thích số message.
Bạn đã và đang học được router trong Yii, mẫu nhưng mà bao gồm mục đích quan trọng đặc biệt vào vấn đề tùy chỉnh kết nối giữa user cùng các controller actions.
Trong phần tiếp , các bạn sẽ tìm hiểu phương pháp tạo một mã sản phẩm, với thêm bắt đầu các trang có cất HTML khung.
Chuyên mục: Hướng Dẫn