Ожидаемый тип «объект». Найден массив <строка, смешанный>. (Интелефенсе 1006). Кто-нибудь может мне помочь?

Мой код Laravel работает нормально, но расширение PHP Intelephense показывает ненужную ошибку в коде. Если я удалю расширение, ошибка исчезнет и снова появится при переустановке. Он также показывает некоторые ошибки в папке Laravel helpers.php. Мой преподаватель использует PHPStorm, и он напрямую вызывает request(), не получая никаких ошибок. Я имею в виду, что я использую VSCode, и request() работает без ошибок, но я просто хочу исправить волнистую ошибку. Может ли кто-нибудь помочь мне решить эту проблему?

Ожидаемый тип «объект». Найден массив &lt;строка, смешанный&gt;. (Интелефенсе 1006). Кто-нибудь может мне помочь?

Я попробовал удалить и попробовать еще раз, но ошибка не исчезла. Также пробовал настроить файл settings.json с помощью :(

Не уверен, что мой ответ решит вашу проблему. Какую версию Laravel вы используете? Можете ли вы разместить файл helpers.php в строке 223? event() не определено, кажется, ваша основная проблема.

Rager 29.07.2024 21:23

Я использую Laravel 11.14. Я включил ссылку на скриншот. ссылка

Zamran Nazar 30.07.2024 08:26

Этот вопрос похож на: Неопределенные функции/методы - Intelephense(1013) - Laravel Homestead + VScode. Если вы считаете, что это другое, отредактируйте вопрос, поясните, чем он отличается и/или как ответы на этот вопрос не помогают решить вашу проблему.

N69S 30.07.2024 13:00
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
4
70
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Чтобы код VS нашел функцию request, он использует файлvendor/laravel/framework/composer.json. В частности, определение внутри этого блока относится к файлу Foundation/helpers.php.

 "autoload": {
        "files": [
            "src/Illuminate/Collections/helpers.php",
            "src/Illuminate/Events/functions.php",
            "src/Illuminate/Filesystem/functions.php",
            "src/Illuminate/Foundation/helpers.php",
            "src/Illuminate/Support/helpers.php"
        ],
        "psr-4": {
            "Illuminate\\": "src/Illuminate/",
            "Illuminate\\Support\\": [
                "src/Illuminate/Macroable/",
                "src/Illuminate/Collections/",
                "src/Illuminate/Conditionable/"
            ]
        }
    },

Убедитесь, что это определение существует. если нет, вы всегда можете добавить его в свой файл композитора.json.

Спасибо, но у меня есть эти определения в файле композитора.json. :(

Zamran Nazar 30.07.2024 08:11

Проблема здесь в docblock в request(). Почти у всех помощников есть эта проблема. Я думаю, это из-за этих изменений [11.x] подвиг: добавить более конкретные типы и тесты для помощников

Редактировать №1

Если вас это действительно беспокоит, вы можете поставить значение null внутри request().

request(null)->validate(...);
Ответ принят как подходящий

Я встретил разработчика PHP Intelephense на github, он сказал мне, что это ошибка в расширении PHP Intelephense, и сказал, что они исправили ее в последней версии. После обновления расширения проблема была решена.

//Но в помощниках и других папках еще есть несколько ошибок, но он сказал, что они скоро это исправят.

Другие вопросы по теме