symfony路由群組件(The Routing Component)

來源:互聯網
上載者:User
The Routing component 把HTTP request轉換為一系列的配置參數.

安裝

你有兩種方式來安裝這個組件:

通過 Composer (symfony/routing on Packagist);使用官方的 Git repository (https://github.com/symfony/Routing)。

然後, 需要Composer把vendor/autoload.php 這個檔案提供 給 autoloading mechanism 。 否則,你的應用程式將找不到這個組件。

用法

你需要下面三部分來設定基本的路由系統:

  • RouteCollection, 包含路由的定義(instances of the class Route)
  • RequestContext, 有關request的資訊;
  • UrlMatcher, 把request匹配成單一的route(即確定需要使用那個route)

下面有個簡單的例子。這裡你需要確定你的autoloader 已經載入了這個組件:

useSymfony\Component\Routing\Matcher\UrlMatcher;useSymfony\Component\Routing\RequestContext;useSymfony\Component\Routing\RouteCollection;useSymfony\Component\Routing\Route;$route = new Route('/foo', array('controller' => 'MyController'));$routes = new RouteCollection();$routes->add('route_name', $route);$context = new RequestContext($_SERVER['REQUEST_URI']);$matcher = new UrlMatcher($routes, $context);$parameters = $matcher->match('/foo');// array('controller' => 'MyController', '_route' => 'route_name')

需要注意的是當使用$_SERVER[‘REQUEST_URI’]時,在URL上面可以包含任何參數。一個簡單的解決辦法就是使用HttpFoundation component 這個組件,下文將會解釋這個組件。

未完待續

原文連結:
http://symfony.com/doc/current/components/routing/introduction.html

以上就介紹了symfony路由群組件(The Routing Component),包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.