Получение значения массива по ключу

У меня есть следующий код, создающий массив и пытающийся сбросить/умереть первый элемент

$huh = [15,30];
dd($huh[0]);

С PHP 8.1 и Laravel 9.2:

  • При использовании в контроллере будет правильно выводить 15

  • Когда я использую его в тестовом методе или обычном классе, он выводит весь массив (то же самое, если я использую эхо):

    ^ array:2 [
        0 => 15
        1 => 30]
    

С PHP 8.1, Laravel 8.83.2

  • Он будет правильно выводить 15 в любом месте

Я чувствую, что схожу с ума. Я не понимаю, что происходит. Кто-нибудь может помочь?

Обновление: кажется, что это касается запуска тестов. Он работает в контроллере, потому что я вывожу в браузер. Это не работает, когда я запускаю код через тест (PHPUnit). До сих пор не знаю, почему.

Обновление 2: Итак, я импортировал:

use Tests\TestCase; 

Но когда я перешел на

use PHPUnit\Framework\TestCase;

Тесты правильно выдавали 15. До сих пор не знаю, почему. Но, может быть, я просто держусь подальше от Tests\TestCase; (У меня такое ощущение, что это может быть из предыдущей версии Laravel и больше не используется).

Стоит ли изучать 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
0
28
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Итак, я считаю, что проблема была в том, что я импортировал

use Tests\TestCase;

И нет:

use PHPUnit\Framework\TestCase;

Похоже, что Tests\TestCase, возможно, был из старой версии laravel и несовместим с Laravel 9.2. Кадры кажутся странным поведением.

Обновление: Итак, Tests\TestCase все еще используется в Laravel 9.2, но он используется для функциональных тестов, а не для модульных тестов. Все еще не уверен, почему импорт его в модульный тест может вызвать такое поведение.

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