$array1 = array(0,1,3,0);
$array2 = array(2,0,3,2);
$array3 = array(0,4,5,1);
echo min($array1) . "\n";
echo min($array2) . "\n";
echo min($array3) . "\n";
これは私を返します:
0
0
0
しかし、私は受け取りたいです:
1
2
1
関数MINで0をスキップする方法は?
$array1 = array(0,1,3,0);
$array2 = array(2,0,3,2);
$array3 = array(0,4,5,1);
echo min($array1) . "\n";
echo min($array2) . "\n";
echo min($array3) . "\n";
これは私を返します:
0
0
0
しかし、私は受け取りたいです:
1
2
1
関数MINで0をスキップする方法は?
array_filterを試してください:
コールバックが提供されていない場合、FALSEに等しい入力のすべてのエントリが削除されます。
だからそれはあなたのために削除0
されます。
echo min(array_filter($array1)) . "\n";
に加えてarray_filter
、次のように明示することができます
$min = min(array_diff($array1, array(0)); // result = 1
これにより、より多くの値を非常に簡単に無視できます。
$min = min(array_diff($array1, array(0, 1)); // result = 3