РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1114 of 1392 menu

Метод set

Метод set класса Arr позволяет установить значение в массиве по указанному ключу. Он поддерживает "точечную" нотацию для работы с вложенными структурами данных. Первым параметром передаётся массив, вторым - ключ или путь к элементу, третьим - устанавливаемое значение. Если ключ не существует в массиве, он будет создан автоматически.

Синтаксис

<?php use Illuminate\Support\Arr; $arr = Arr::set($array, $key, $value); ?>

Пример

Давайте установим значение элемента с ключом 'name':

<?php use Illuminate\Support\Arr; $arr = ['name' => 'John', 'age' => 30]; $res = Arr::set($arr, 'name', 'Jane'); print_r($res); ?>

Результат выполнения кода:

Array ( [name] => Jane [age] => 30 )

Пример

Установим значение по "точечному" пути во вложенном массиве:

<?php use Illuminate\Support\Arr; $arr = [ 'user' => [ 'profile' => [ 'name' => 'John' ] ] ]; $res = Arr::set($arr, 'user.profile.name', 'Jane'); print_r($res); ?>

Результат выполнения кода:

Array ( [user] => Array ( [profile] => Array ( [name] => Jane ) ) )

Пример

Если ключ не существует, метод создаст его автоматически:

<?php use Illuminate\Support\Arr; $arr = ['id' => 1]; $res = Arr::set($arr, 'user.email', 'test@example.com'); print_r($res); ?>

Результат выполнения кода:

Array ( [id] => 1 [user] => Array ( [email] => test@example.com ) )

Пример

Метод также позволяет устанавливать значения с использованием символа '*' для массового обновления:

<?php use Illuminate\Support\Arr; $arr = [ ['name' => 'John', 'age' => 25], ['name' => 'Jane', 'age' => 30], ['name' => 'Bob', 'age' => 35] ]; $res = Arr::set($arr, '*.age', 40); print_r($res); ?>

Результат выполнения кода:

Array ( [0] => Array ( [name] => John [age] => 40 ) [1] => Array ( [name] => Jane [age] => 40 ) [2] => Array ( [name] => Bob [age] => 40 ) )

Смотрите также

  • метод get,
    который получает значение из массива по ключу
  • метод has,
    который проверяет существование ключа в массиве
  • метод forget,
    который удаляет значение из массива по ключу
  • метод add,
    который добавляет значение в массив, если ключ не существует
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить