沃梦达 / 编程问答 / php问题 / 正文

如何在 Laravel 中创建一条包罗万象的路线

How do I make a Catch-All Route in Laravel(如何在 Laravel 中创建一条包罗万象的路线)

本文介绍了如何在 Laravel 中创建一条包罗万象的路线的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一个 laravel routes.php 条目,该条目将捕获网站特定 domain.com/premium-section 的所有流量,以便我可以在访问高级内容之前提示人们成为会员.

I need a laravel routes.php entry that will catch all traffic to a specific domain.com/premium-section of the site so that I can prompt people to become members before accessing the premium content.

推荐答案

  1. 在 app/Http/routes.php 中,我创建了一个路由,该路由将捕获 domain.com/premium-section/anywhere/they/try/to/go 中的所有流量,并尝试在 PremiumSectionController 中查找并执行匹配函数
  2. 但是没有任何匹配的方法,只是一个包罗万象的方法.

  1. In app/Http/routes.php I create a route that will catch all traffic within domain.com/premium-section/anywhere/they/try/to/go and attempt to find and execute a matching function within PremiumSectionController
  2. But there aren't any matching methods, just a catch-all.

Route::group(['as' => 'premium-section::',
              'prefix' => 'premium-section',
              'middleware' => ['web']],
              function(){
                 Route::any('', 'PremiumSectionController@premiumContentIndex');
                 Route::controller('/', 'PremiumSectionController');

              });

.

    namespace AppHttpControllers;

    use ...

    class PremiumSectionController extends Controller{

        public function premiumContentIndex(){
           return 'no extra parameters';
        }

        //magically gets called by laravel
        public function missingMethod($parameters = array()){
            return $parameters;
        }

    }

这篇关于如何在 Laravel 中创建一条包罗万象的路线的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何在 Laravel 中创建一条包罗万象的路线