/php-router

Php için dil destekli yönlendirme sınıfı

Primary LanguagePHP

furkanmeclis/php-router

Latest Stable Version Total Downloads Latest Unstable Version License

  _____  _    _ _____             _____             _            
 |  __ \| |  | |  __ \           |  __ \           | |           
 | |__) | |__| | |__) |  ______  | |__) |___  _   _| |_ ___ _ __
 |  ___/|  __  |  ___/  |______| |  _  // _ \| | | | __/ _ \ '__|
 | |    | |  | | |               | | \ \ (_) | |_| | ||  __/ |   
 |_|    |_|  |_|_|               |_|  \_\___/ \__,_|\__\___|_|   

Php İçin Dil Destekli Yönlendirme Sınıfı.

Özellikler

  • GET,POST,PUT ve DELETE istek metotları destekleniyor.
  • Controller dosyaları destekleniyor.
  • Middleware kontrolü yapılabiliyor.
  • Özelleştirilmiş parametreler destekleniyor.
  • Yeni doğrulama deseni eklenebiliyor.
  • Namespace desteği mevcut.
  • Gruplama özelliği mevcut.
  • Dil desteği mevcut.
  • Özelleştirilmiş hata sayfaları.

Yükleme

  • Composer İle Yükleme

    composer require furkanmeclis/router
  • Manuel Olarak yükleme

    src/Router.php Dosyasını indirerek projenize dahil edebilirsiniz.

Örnek Kullanım

  1. .htaccess
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ index.php?uri=/$1 [L]
  1. index.php
<?php
    require './vendor/autoload.php';
    $router = new furkanmeclis\Router([
        "namespaces" => [
            "controller" => 'App\Controller\\',
            "middleware" => 'App\Middleware\\'
        ],
        "paths" => [
        "controller" => 'App/Controller/',
        "middleware" => 'App/Middleware/'
        ],
        "error" => [
            "controller" => "Home",
            "method" => "error"
        ],
        "language" => [
            "default_language" => "tr",
            "router_file_url" => "/router.json"
        ]
    ]);

    $router->get('/',function(){
        echo "Welcome Home Page";
    });

    $router->group('/api',function($r){

        $r->get('/home','ApiController@Home');

        $rr->post('/user/:id','ApiController@getUser');

    },'TestMiddleware');

    $router->initLanguage([
        "tr" => [
            "home" => ["anasayfa","Homecontroller@home"],
            "contact" =>["iletisim","Homecontroller@contact"]
        ],
        "en" => [
            "home" => ["home","Homecontroller@home"],
            "contact" =>["contact","Homecontroller@contact"]
        ]
    ]);
    $router->language();
    $router->run();

?>

Dökümantasyon

Dökümantasyon sayfasına burdan veya documentation.pdf dosyasını indirerek ulaşabilirsiniz.