【问题标题】:Why did my Facades stop working after updating to Laravel 7.3?为什么我的 Facades 在更新到 Laravel 7.3 后停止工作?
【发布时间】:2020-07-12 15:34:33
【问题描述】:

我正在尝试将我的网站从使用 Laravel 5.4 更新到 Laravel 7.3。在大多数情况下它可以工作,但看起来我的自定义外观由于某种原因无法正常工作......

任何时候使用我都会收到以下错误...

这里是相关文件...

App\Helpers\MyLogHelper.php

namespace App\Helpers;

use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Facades\Log;

class MyLogHelper
{
  public function __construct()
  {

  }

  public function Log($file_name, $message)
  {
    $file_name = $file_name . '.log';
    $message = date('d-m-Y G:i:s - ') . $message;
    if(!Storage::disk('log')->exists($file_name))
    {
      Storage::disk('log')->put($file_name, $message);
    }
    else
    {
      Storage::disk('log')->append($file_name, $message);
    }
  }   
}

App\Providers\MyLogServiceProvider.php

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use App\Helpers\MyLogHelper;

class MyLogServiceProvider extends ServiceProvider
{

  /**
   * Register the application services.
   *
   * @return void
   */
  public function register()
  {
     $this->app->bind('mylog', function($app){
        return new MyLogHelper();
     });
  }
}

App\Facades\MyLog.php

<?php

namespace App\Facades;

use Illuminate\Support\Facades\Facade;

class MyLog extends Facade
{
  /**
   * Get the registered name of the component.
   *
   * @return string
   */
    protected static function getFacadeAccessor() { return 'mylog'; }
}

在 app.php...

  • Providers:添加以下条目“App\Providers\MyLogServiceProvider::class”
  • 别名:添加以下条目“'MyLog' => App\Facades\MyLog::class”

我运行以下命令:

  • php 工匠路线:缓存
  • 作曲家转储自动加载

【问题讨论】:

    标签: php laravel laravel-7


    【解决方案1】:

    您的配置可能存在缓存问题,请尝试运行 php artisan config:clear

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-31
      • 2010-09-13
      • 1970-01-01
      • 2017-02-15
      • 1970-01-01
      • 1970-01-01
      • 2021-01-20
      相关资源
      最近更新 更多