小编jdo*_*doe的帖子

Auth::guard('user')->user() 在 Laravel 5.3 中为 null

我正在尝试将当前用户对象传递给所有模板,如下所示:

class Controller extends BaseController
{
    public function __construct()
    {
        view()->share('usr', Auth::guard('user'));
    }
}
Run Code Online (Sandbox Code Playgroud)

每个控制器都由控制器扩展。但是,如果我尝试转储Auth::guard('user')->user()Laravel 返回 null,尽管我已登录。此外,当我将此变量传递到模板时,{{ $usr->user() }}返回当前用户。我做错了什么?

我的配置/auth.php

'defaults' => [
    'guard' => 'user',
    'passwords' => 'users',
],
'guards' => [
        'user' => [
            'driver' => 'session',
            'provider' => 'user',
        ],
    ],
'providers' => [
        'user' => [
            'driver' => 'eloquent',
            'model' => App\User::class,
        ],
    ],
Run Code Online (Sandbox Code Playgroud)

内核.php

         protected $middleware = [
     \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
 ];

/**
 * The application's route middleware groups.
 *
 * @var array …
Run Code Online (Sandbox Code Playgroud)

authentication guard laravel laravel-5 laravel-5.3

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

如何在 Symfony3.4 中清除 Controller 中的缓存?

将 Symfony 从 3.3 迁移到 3.4 后,我的功能不起作用(以前有效)。我必须清除控制器中的缓存,当我执行下面的命令时,函数返回错误。

exec(sprintf(
  "php %s/bin/console cache:clear --env=prod",
  $this->getParameter('kernel.project_dir')
));
Run Code Online (Sandbox Code Playgroud)

它返回类似的东西:

Fatal error: require(): Failed opening required '/[...]/var/cache/prod/ContainerAcrshql/getTwig_ExceptionListenerService.php' (include_path='.:/usr/local/share/pear') in /[...]/var/cache/prod/ContainerAcrshql/appProdProjectContainer.php on line 764 Fatal error: require(): Failed opening required '/[...]/var/cache/prod/ContainerAcrshql/getSwiftmailer_EmailSender_ListenerService.php' (include_path='.:/usr/local/share/pear') in /[...]/var/cache/prod/ContainerAcrshql/appProdProjectContainer.php on line 764
Run Code Online (Sandbox Code Playgroud)

另外我可以告诉你,在开发环境中它可以正常工作。此外,当项目运行 localy 并模拟 prod env(在地址栏中,我在 localhost:8000 之后键入 app.php)。我没有其他服务器来检查问题是否仍然发生

php caching symfony php-7.1 symfony-3.4

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

如何使用php7在ubuntu 16.04中安装php5.6?

我遇到了一个问题,几个月前我将 ubuntu 14.04 更新到 16.04,而我的 LAMP php5.6 在 php7 旁边工作时出现问题,所以我将其删除。新项目现在很好,但是如果我尝试更新旧项目中的作曲家,控制台会返回错误...内容如下:

Problem 1
    - Installation request for simpay/api_client dev-master -> satisfiable by simpay/api_client[dev-master].
    - simpay/api_client dev-master requires ext-curl ^0.0.0 -> the requested PHP extension curl has the wrong version (7.0.8-0ubuntu0.16.04.3) installed.

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/7.0/cli/php.ini
    - /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
    - /etc/php/7.0/cli/conf.d/10-opcache.ini
    - /etc/php/7.0/cli/conf.d/10-pdo.ini
    - /etc/php/7.0/cli/conf.d/15-xml.ini
    - /etc/php/7.0/cli/conf.d/20-calendar.ini
    - /etc/php/7.0/cli/conf.d/20-ctype.ini
    - /etc/php/7.0/cli/conf.d/20-curl.ini
    - /etc/php/7.0/cli/conf.d/20-dom.ini
    - /etc/php/7.0/cli/conf.d/20-exif.ini
    - /etc/php/7.0/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.0/cli/conf.d/20-ftp.ini
    - /etc/php/7.0/cli/conf.d/20-gd.ini
    - /etc/php/7.0/cli/conf.d/20-gettext.ini …
Run Code Online (Sandbox Code Playgroud)

php-ini php-5.6 ubuntu-14.04 php-7 ubuntu-16.04

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