избегать строкового элемента в массиве php 2d - PullRequest
0 голосов
/ 31 декабря 2018

Описание:

У меня есть массив 2d:

$array = InvApplication::model()->findall(array('order'=>'app_name'));

В массиве содержится следующий элемент: "app5", как этого избежать?

Фактический вывод:

app_name|field1|field2|fieldN|..|..
 appn    |
 appn1   |
 appn2   |
 app5    |

Уже протестировано

Я тестировал функции unset, in_array и strpos.В дополнение к:

php - поиск ключей в массиве, соответствующих шаблону

Удаление элемента из многомерного массива на основе значения

Мой настоящий код:

Это настоящий способ, но он не работает так, как я хочу.

$deleteapp = "app5";
unset($list[$deleteapp]); Test with unset or array_diff
        foreach($list as $k=>$v)
        {
            if(in_array($v,array('app5'))) unset($list[$k]);}

Я ожидаю этого:

app_name|field1|field2|fieldN|..|..
 appn    |
 appn1   |
 appn2   |

Спасибо.

1 Ответ

0 голосов
/ 01 января 2019

кажется, что вы хотите исключить имя приложения из результата выбора, в этом случае вы можете использовать условие

$array = InvApplication::model()->findall(
  array("condition"=> "app_name !=  'app5'","order"=>"app_name")
);
...