Как добавить пустой массив в массив? - php

75
13 марта 2021, 22:00

Есть массив:

$data = Array (
0 => Array ('id' => 1, 'check' => ''), 
1 => Array ('id' => 2, 'check' => ''), 
2 => Array ('id' => 3, 'check' => 'on'), 
3 => Array ('id' => 4, 'check' => ''), 
4 => Array ('id' => 5, 'check' => ''),
);

Нужно сделать что-бы если 'check'=='on', то добавлялся пустой массив после массива с 'check'=='on':

$data = Array (
0 => Array ('id' => 1, 'check' => ''), 
1 => Array ('id' => 2, 'check' => ''), 
2 => Array ('id' => 3, 'check' => 'on'),
3 => Array (),
4 => Array ('id' => 4, 'check' => ''), 
5 => Array ('id' => 5, 'check' => ''),
);

https://3v4l.org/GPQKc

Answer 1
$data = Array (
        0 => Array ('id' => 1, 'check' => ''),
        1 => Array ('id' => 2, 'check' => ''),
        2 => Array ('id' => 3, 'check' => 'on'),
        3 => Array ('id' => 4, 'check' => ''),
        4 => Array ('id' => 5, 'check' => 'on'),
        5 => Array ('id' => 5, 'check' => ''),
    );
function addEmptyArray(array $data): array
{
    $result = [];
    foreach($data as $position_arr){
        $result[] = $position_arr;
        if(!empty($position_arr['check'])){
            $result[] = [];
        }
    }
    return $result;
}
print_r(addEmptyArray($data));
Answer 2

Можно как то так:

$data = Array (
        0 => Array ('id' => 1, 'check' => ''),
        1 => Array ('id' => 2, 'check' => ''),
        2 => Array ('id' => 3, 'check' => 'on'),
        3 => Array ('id' => 4, 'check' => ''),
        4 => Array ('id' => 5, 'check' => ''),
    );
foreach ($data as $key => $value){
    if($value['check'] == 'on'){
        array_splice($data, $key + 1, 0, [[]]);
    }
}
READ ALSO
Вывод из базы данных php

Вывод из базы данных php

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

106
Как сделать чтобы выводилось 5 последних событий?

Как сделать чтобы выводилось 5 последних событий?

Как сделать, чтобы из базы выводилось не одно последнее событие, как сейчас, а последние пять?

85
Выполнение bash скрипта из php

Выполнение bash скрипта из php

Я пытаюсь реализовать привязку домена к серверу средствами php и нескольких bash скриптовВ первом скрипте я устанавливаю домен в апач, во втором...

88
Передача get-параметров при php-роутинге

Передача get-параметров при php-роутинге

возникла проблема при отправке get-запросов на сайт с простым php-роутингом

97