小编Jor*_*cht的帖子

Laravel 5从包服务提供商中注册中间件

我正在为Laravel 5开发一个软件包.
我的软件包包含一个自定义中间件,我想将它添加到$routeMiddleware我的软件包服务提供程序中的Kernel类的数组中.
但我似乎找不到办法做到这一点.

我试图创建一个扩展Kernel类的自定义类,然后我可以将数组与我的数组合并.
但是一旦出了构造函数就不可能了.

在L4中你有App :: middleware,但L5中不再提供该功能.

任何解决过这个问题的人都可以帮我解决这个问题吗?

请告诉我,如果我的问题不够明确,那么我可以稍微澄清一下.

php package service-provider laravel-5 laravel-middleware

14
推荐指数
3
解决办法
1万
查看次数

RewriteRule无法在生产服务器上运行

对于我当前的项目,我必须重定向301一些链接但是当你输入一些额外的get参数时,参数需要在新url上加后缀.

例:

旧:/ language/nl/article-1 /?test = 123

new:/ language/nl/fa1-artcile-1 /?test = 123

所以我使用以下代码:(在我的开发环境中工作正常)

RewriteEngine On
Options +FollowSymLinks
RewriteBase /language/nl
RewriteRule /artcile-1/*    /language/nl/fa1-artcile-1/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

但是一旦在我的生产环境中它不起作用,它仍然重定向到新的URL但是,get参数不会附加在新的URL上.

编辑:它确实重定向但它不附加参数.

编辑2:完全填充

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
Run Code Online (Sandbox Code Playgroud)

重写规则出现在wordpress部分之前,我有大约30个.

有什么建议?

php .htaccess mod-rewrite redirect

5
推荐指数
1
解决办法
390
查看次数

CI访问接口上的属性

我正在使用scrutinizer来分析我的代码.几乎所有事情都已修复,但我似乎无法解决这个问题.

Accessing id on the interface Illuminate\Contracts\Auth\Authenticatable suggest that you code against a concrete implementation. How about adding an instanceof check?
Run Code Online (Sandbox Code Playgroud)

我看到问题是因为它是一个不存在的接口,但我的代码工作得很好.那么在分析我的代码时如何让这段代码通过呢?

谢谢

编辑

在这些行上得到错误(和其他一些文件几乎相同)

$this->tracert->log(
            'users',
            $this->auth->user()->id,
            $this->auth->user()->id,
            'Login'
        );
Run Code Online (Sandbox Code Playgroud)

该类的构造函数

 /**
 * @param \Illuminate\Contracts\Auth\Guard $auth
 * @param \jorenvanhocht\Tracert\Tracert $tracert
 */
public function __construct(Guard $auth, Tracert $tracert)
{
    parent::__construct($auth);
    $this->tracert = $tracert;
}
Run Code Online (Sandbox Code Playgroud)

我的基本控制器的构造函数:

public function __construct(Guard $auth)
{
    $this->auth = $auth;
    $this->config = objectify(config('blogify'));
    $this->auth_user = $this->auth->check() ? $this->auth->user() : false;
}
Run Code Online (Sandbox Code Playgroud)

使用过的合同https://github.com/illuminate/contracts/blob/master/Auth/Guard.php

php interface laravel scrutinizer

4
推荐指数
1
解决办法
95
查看次数