PHP Classes

PHP URL Router Class: Match URLs with routes for controllers and actions

Recommend this page to a friend!
  Info   View files View files (37)   DownloadInstall with Composer Download .zip   Reputation   Support forum (2)   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2024-01-09 (4 months ago) RSS 2.0 feedStarStarStar 55%Total: 1,299 All time: 2,975 This week: 71Up
Version License PHP version Categories
url-router 1.0.13MIT/X Consortium ...5.2HTTP, PHP 5, Design Patterns
Description 

Author

This class can match URLs with routes for controllers and actions.

It takes the definition of one or more routes with string expressions that define patterns to match given URLs.

It supports a special route pattern syntax that allows defining how to extract the name of the controller and action from the URL.

The class returns an array with the details of the matched route.

Picture of Mark Rolich
  Performance   Level  
Name: Mark Rolich <contact>
Classes: 8 packages by
Country: Armenia Armenia
Age: 43
All time rank: 9051 in Armenia Armenia
Week rank: 264 Up1 in Armenia Armenia Equal
Innovation award
Innovation award
Nominee: 2x

Details

[![Build Status](https://travis-ci.org/mark-rolich/Router.svg?branch=master)](https://travis-ci.org/mark-rolich/Router) [![Coverage Status](https://img.shields.io/coveralls/mark-rolich/Router.svg)](https://coveralls.io/r/mark-rolich/Router) [![License](https://poser.pugx.org/bike/router/license.svg)](https://packagist.org/packages/bike/router) Router ================= This PHP class matches url against predefined route patterns. Features * Routes can be attached to HTTP methods, and follow simple DSL syntax. * Uses short codes for the frequently used patterns * Provides possibility to add user defined tokens with matching regex. * Reverse generate url from a specified route name. <a href="http://mark-rolich.github.io/Router/" target="_blank"><strong>Full documentation</strong></a> Copyright and License --------------------- The MIT License (MIT) Copyright (c) 2014 Mark Rolich Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

  Files folder image Files  
File Role Description
Files folder imagedoc (2 files)
Files folder imagedocumentor (22 files)
Files folder imagesrc (1 directory)
Files folder imagetests (6 files)
Accessible without login Plain text file .travis.yml Data Travis CI configuration
Accessible without login Plain text file composer.json Data Composer configuration
Accessible without login Plain text file mit-license.txt Lic. LICENSE
Accessible without login Plain text file phpunit.xml Data PHPUnit configuration
Accessible without login Plain text file README.md Data README
Accessible without login Plain text file routes.php Aux. predefined routes

  Files folder image Files  /  doc  
File Role Description
  Accessible without login Plain text file index.css Data doc styles
  Accessible without login HTML file index.html Doc. doc html file

  Files folder image Files  /  documentor  
File Role Description
  Accessible without login Plain text file advanced.php Example Documention generator files
  Accessible without login Plain text file all_methods_accepted.php Example Documention generator files
  Accessible without login Plain text file compile.php Example Documention generator files
  Accessible without login Plain text file controller_action.php Example Documention generator files
  Accessible without login Plain text file controller_only.php Example Documention generator files
  Accessible without login Plain text file documentation.php Aux. Documention generator files
  Accessible without login Plain text file example_route_setup.php Example Documention generator files
  Accessible without login Plain text file index.css Output Documention generator files
  Accessible without login Plain text file index.php Output Documention generator files
  Accessible without login Plain text file in_place_regex.php Example Documention generator files
  Accessible without login Plain text file method_not_acceptable.php Example Documention generator files
  Accessible without login Plain text file method_not_supported.php Example Documention generator files
  Accessible without login Plain text file optional_parameters.php Example Documention generator files
  Accessible without login Plain text file optional_parameters_with_defaults.php Example Documention generator files
  Accessible without login Plain text file predefined_routes.php Example Documention generator files
  Accessible without login Plain text file predefined_routes_test.php Example Documention generator files
  Accessible without login Plain text file query_string.php Example Documention generator files
  Accessible without login Plain text file slug.php Example Documention generator files
  Accessible without login Plain text file static_dynamic.php Example new test for static and dynamic parts mix in the route
  Accessible without login Plain text file token_undefined.php Example Documention generator files
  Accessible without login Plain text file url.php Example Documention generator files
  Accessible without login Plain text file user_defined_token.php Example Documention generator files

  Files folder image Files  /  src  
File Role Description
Files folder imageBike (1 file)

  Files folder image Files  /  src  /  Bike  
File Role Description
  Plain text file Router.php Class Main class

  Files folder image Files  /  tests  
File Role Description
  Accessible without login Plain text file compiled.php Aux. compiled routes for test
  Accessible without login Plain text file RouterAdvancedTest.php Test new test for static and dynamic parts mix in the route
  Accessible without login Plain text file RouterExceptionTest.php Test Exceptions tests
  Accessible without login Plain text file RouterSetupTest.php Test Setup tests
  Accessible without login Plain text file RouterTest.php Test General tests
  Accessible without login Plain text file RouterUrlTest.php Test Url generation tests

 Version Control Unique User Downloads Download Rankings  
 100%
Total:1,299
This week:0
All time:2,975
This week:71Up
User Ratings User Comments (1)
 All time
Utility:62%StarStarStarStar
Consistency:62%StarStarStarStar
Documentation:62%StarStarStarStar
Examples:62%StarStarStarStar
Tests:50%StarStarStar
Videos:-
Overall:55%StarStarStar
Rank:1986
 
You don't program like that at all.
11 months ago (Space)
0%Star