PHP code example of marcot89 / laravel-magic-routes
1. Go to this page and download the library: Download marcot89/laravel-magic-routes library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
marcot89 / laravel-magic-routes example snippets
namespace App\Http\Controllers;
use MarcoT89\LaravelMagicRoutes\Traits\MagicRoutes;
class UserController extends Controller
{
use MagicRoutes;
}
namespace App\Http\Controllers;
class UserController extends Controller
{
use MagicRoutes;
public function index(...) {...}
public function store(...) {...}
public function update(...) {...}
public function create(...) {...}
public function show(...) {...}
public function edit(...) {...}
public function destroy(...) {...}
public function forceDestroy(...) {...}
}
class PostController extends Controller
{
use MagicRoutes;
// Generated route:
// GET /posts/{post}/publish
public function publish(Post $post) {...}
// Generated route:
// POST /posts/{post}/publish
public function postPublish(Post $post) {...}
// Generated route:
// PUT /posts/{post}/publish
public function putPublish(Post $post) {...}
// Generated route:
// DELETE /posts/{post}/publish
public function deletePublish(Post $post) {...}
}
class PostController extends Controller
{
public function publish(Post $post, $one, $two, $three) {...}
}
class UserController extends Controller
{
use MagicRoutes;
// use a string for one middlware
protected $middleware = 'auth';
// or use an array for many middlewares
protected $middleware = [
'auth',
'verified' => ['except' => ['index', 'edit', 'update']],
];
}
class UserController extends Controller
{
use MagicRoutes;
public function __construct()
{
$this->middleware('auth');
}
}
namespace App\Http\Controllers\Api\V1;
...
class UserController extends Controller
{
use MagicRoutes;
public function index(...) {...}
}
namespace App\Http\Controllers\Posts;
class PublishController extends Controller
{
use MagicRoutes;
protected $middleware = 'auth';
protected $method = 'post'; // only works for invokable controllers
// or
protected $method = 'post|put'; // separate by pipe for more http methods
public function __invoke(Post $post) {...}
}
namespace App\Http\Controllers\Users; // Note that it is inside Users namespace for prefix route
class PostController extends Controller
{
use MagicRoutes;
protected $prefix = '{user}';
public function index(User $user) {
return $user->posts()->paginate();
}
}
class UserController extends Controller
{
use MagicRoutes;
protected $plural = false;
...
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.