Laravel array_forget () помощник, для вложенных массивов - PullRequest
0 голосов
/ 14 ноября 2018

Я использую Laravel, и у меня есть простой вложенный массив

[
  ['id' => 1, 'name' => 'name1', 'phone' => '0'],
  ['id' => 2, 'name' => 'name2', 'phone' => '00'],
  ['id' => 3, 'name' => 'name3', 'phone' => '000']
]

Я хочу использовать Laravel array_forget () или любой другой простой способ
, чтобы получить этот массив без телефонов

Ответы [ 3 ]

0 голосов
/ 14 ноября 2018

Вы можете сделать:

$elements = [
  ['id' => 1, 'name' => 'name1', 'phone' => '0'],
  ['id' => 2, 'name' => 'name2', 'phone' => '00'],
  ['id' => 3, 'name' => 'name3', 'phone' => '000']
];

$elements_without_phones = collect($elements)->map(function ($element){
    array_forget($element, 'phone');

    return $element;
});
0 голосов
/ 14 ноября 2018

Вы должны выполнить итерацию массива массивов и применить функцию array_forget() к каждому (под) массиву.

$array = [
    ['id' => 1, 'name' => 'name1', 'phone' => '0'],
    ['id' => 2, 'name' => 'name2', 'phone' => '00'],
    ['id' => 3, 'name' => 'name3', 'phone' => '000']
];

foreach($array as &$sub_array) { //note the passing by reference
    array_forget($sub_array, 'phone');
}
0 голосов
/ 14 ноября 2018

Вы можете взглянуть на продвинутые методы сбора в laravel - удобную группу помощников, разработанную для работы с массивами в Laravel.Вам может понадобиться метод except()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...