3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = array( array ( 0 => array ( 'norm_value' => 2.5, ), 1 => array ( 'norm_value' => 7.01, ), 2 => array ( 'norm_value' => 0.0, ), 3 => array ( 'norm_value' => 4.167, ), 4 => array ( 'norm_value' => 0.0, ), ), array ( 0 => array ( 'norm_value' => 0.0, ), 1 => array ( 'norm_value' => 0.0, ), 2 => array ( 'norm_value' => 0.0, ), 3 => array ( 'norm_value' => 1.267, ), 4 => array ( 'norm_value' => 0.0, ), ), array ( 0 => array ( 'norm_value' => 0.0, ), 1 => array ( 'norm_value' => 0.0, ), 2 => array ( 'norm_value' => 0.0, ), 3 => array ( 'norm_value' => 0.0, ), 4 => array ( 'norm_value' => 0.0, ), ), array ( 0 => array ( 'norm_value' => 3.54, ), 1 => array ( 'norm_value' => 2.04, ), 2 => array ( 'norm_value' => 0.673, ), 3 => array ( 'norm_value' => 8.546, ), 4 => array ( 'norm_value' => 0.0, ), ) ); $epsilon = 0.00001; foreach($arr as $index => $subarray){ $count = 0; foreach($subarray as $norm_data){ if(abs($norm_data['norm_value'] - 0.0) < $epsilon) $count++; } if($count === count($subarray) || $count == count($subarray)-1){ unset($arr[$index]); } } print_r($arr);

preferences:
31.7 ms | 405 KiB | 5 Q