【问题标题】:Undefined type 'Request'.intelephense(1009)未定义类型 \'Request\'.intelephense(1009)
【发布时间】:2022-11-12 12:40:55
【问题描述】:

我在 Laravel 8 和名称中收到此错误:安装了 PHP Intelephense 1.7.1。

<?php

namespace App\Http\Middleware;

use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Request;


class Authenticate extends Middleware
{
    /**
     * Get the path the user should be redirected to when they are not authenticated.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return string|null
     */
    protected function redirectTo($request)
    {
        if (!$request->expectsJson()) {
            if (Request::is('admin/*'))
                return route('admin.login');
            else
                return route('login');
        }
    }
}

我试图添加

use Illuminate\Support\Facades\Route;

但还是一样的任何想法?

感谢帮助 ...

【问题讨论】:

  • 你使用 Vscode 进行编码吗?
  • 是的,我忘了提到我使用的是 Vscode 1.62.3
  • 我尝试添加使用 Illuminate\Http\Request;也不工作

标签: php laravel laravel-8


【解决方案1】:

解决方案1:你可以通过安装laravel-ide-helper 包来解决这个问题。链接是here

解决方案2:将以下代码放入您的settings.json

  "intelephense.telemetry.enabled": false,
  "intelephense.completion.triggerParameterHints": true,
  "intelephense.completion.insertUseDeclaration": true,
  "intelephense.trace.server": "messages",
  "intelephense.diagnostics.undefinedClassConstants": false,
  "intelephense.diagnostics.undefinedFunctions": false,
  "intelephense.diagnostics.undefinedConstants": false,
  "intelephense.diagnostics.undefinedProperties": false,
  "intelephense.diagnostics.undefinedTypes": false,
  "intelephense.diagnostics.undefinedMethods": false,

最后别忘了重启 vscode。

【讨论】:

  • 谢谢你解决了。如何进行其他设置?那么你从哪里找到这些 json 设置?
  • @malibil 使用 vsc?如果是,则搜索栏上的ctrl+p 执行&gt;open user settings 并在Extensions 搜索上搜索是否要自定义.. 更改时转到settings.json
【解决方案2】:

"Laravel 片段" - VScode 安装插件。

也许它对某人有用。

【讨论】:

    猜你喜欢
    • 2022-12-12
    • 2020-08-01
    • 2022-06-15
    • 2020-09-27
    • 2023-01-29
    • 1970-01-01
    • 2023-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多