Php 过滤阵列

Php 过滤阵列,php,array-filter,Php,Array Filter,我需要一些帮助来过滤数组。我有一个表格,提交以下数据。我只想选择数量为1或更多的数据 array (size=4) 17 => array (size=4) 'id' => string '17' (length=2) 'TicketName' => string 'General admission' (length=17) 'price' => string '50.00' (length=5) 'qty'

我需要一些帮助来过滤数组。我有一个表格,提交以下数据。我只想选择数量为1或更多的数据

array (size=4)
  17 => 
    array (size=4)
      'id' => string '17' (length=2)
      'TicketName' => string 'General admission' (length=17)
      'price' => string '50.00' (length=5)
      'qty' => string '0' (length=1)
  18 => 
    array (size=4)
      'id' => string '18' (length=2)
      'TicketName' => string 'General admission' (length=17)
      'price' => string '50.00' (length=5)
      'qty' => string '2' (length=1)
  19 => 
    array (size=4)
      'id' => string '19' (length=2)
      'TicketName' => string 'General admission' (length=17)
      'price' => string '50.00' (length=5)
      'qty' => string '0' (length=1)
  20 => 
    array (size=4)
      'id' => string '20' (length=2)
      'TicketName' => string 'General admission' (length=17)
      'price' => string '50.00' (length=5)
      'qty' => string '0' (length=1)
我知道我可以用像这样的东西。我不确定如何按数量键进行筛选

$arrays = array_filter($inputs, function($val){
                return $val> 0;

            });

谢谢

您的数组
$input
中的每个元素都是一个数组。因此,您需要访问与键关联的值
qty

$arrays = array_filter($inputs, function($elem){
    return (int)$elem['qty'] > 0;
});

可能是重复的感谢,但当我运行此代码时,我得到一个“非法字符串偏移量'qty'”错误
$array = array();    
foreach($main_array as $chunk){
  if($chunk['qty'] > 0 ){
    $array[] = $chunk;
  }
}
var_dump($array);