nastya97core
@nastya97core
Начинающий программист

Как удалить из многомерного массива?

Здравствуйте. Есть первый массив:
[
["Orange","medium"],
["Orange","big"],
["Apple","big"],
["Banane",false],
["Apple","big"],
];

И есть второй массив ["Apple","big"]
Мне нужно из первого удалить второй массив. Даже если в массиве несколько раз повторяется данный массив - удалить всё равно один раз.

В начале я думала делать это на js, но потом поняла, что это надо было делать на сервере. У меня есть готовый js

let b;
arr = arr.filter(a => !(!b &&  (b = JSON.stringify(a) === JSON.stringify(arrDel))));

его нужно перевести в php. Прошу вашей помощи
  • Вопрос задан
  • 77 просмотров
Решения вопроса 2
@IS-Builder
~ PHP-8 & REGEXP - This is a really powerful kit ~
Перебором в цикле до первого соответствия:
spoiler
$arr = [
    ["Orange", "medium"],
    ["Orange", "big"],
    ["Apple", "big"],
    ["Banane", false],
    ["Apple", "big"],
];
 
$search = ["Apple", "big"];
 
foreach ($arr as $k => $a) {
    if ($a === $search) {
        unset($arr[$k]);
        break;
    }
}
 
var_dump($arr);
Ответ написан
FeST1VaL
@FeST1VaL
Тихий
Как вариант

$array1 = [
["Orange","medium"],
["Orange","big"],
["Apple","big"],
["Banane",false],
["Apple","big"],
];

$array2 = ["Apple","big"];

$index = array_search($array2,$array1);

if($index !== false) unset($array1[$index]);

var_dump($array1);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы