⊗ppMVDFmRr 25 of 35 menu

Phát triển bộ định tuyến trong framework MVC tự viết

Bây giờ bạn cần phát triển một router. Nó là một lớp, sẽ lấy mảng các route, lấy URL được yêu cầu, và xác định route nào tương ứng với URL đó. Sau khi tìm thấy route phù hợp, lớp của chúng ta phải lấy các phần của URL tương ứng với các tham số của route.

Hãy để kết quả của router chúng ta trả về một đối tượng của lớp Track, chứa tên controller cần được gọi cho yêu cầu này, tên action và các tham số từ URL.

Hãy để lớp Track của chúng ta có các thuộc tính controller, actionparams, chỉ có thể đọc:

<?php namespace Core; class Track { private $controller; private $action; private $params; public function __construct($controller, $action, $params) { $this->controller = $controller; $this->action = $action; $this->params = $params; } public function __get($property) { return $this->$property; } } ?>

Ví dụ

Ví dụ, giả sử trong thanh địa chỉ gõ /test/1/2/. Giả sử chúng ta có một route, tương ứng với địa chỉ này:

<?php new Route('/test/:var1/:var2/', 'test', 'index'); ?>

Điều này có nghĩa là tên controller sẽ là test, tên action - index, và mảng tham số sẽ như sau:

<?php ['var1' => 1, 'var2' => 2] ?>

Mục tiêu của bài học này - viết lớp Router, trả về đối tượng của lớp Track. Những thứ khác hiện chưa liên quan đến chúng ta. Hãy bắt đầu viết lớp này.

Nhiệm vụ thực hành

Sao chép mã lớp Track của tôi và đặt nó vào tệp /core/Track.php.

Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối