1
有沒有辦法在PHP中短路array_ *函數?例如,array_reduce?PHP:array_函數 - 短路?
有沒有辦法在PHP中短路array_ *函數?例如,array_reduce?PHP:array_函數 - 短路?
不是固有的。請注意文檔array_walk()
特別是:
array_walk()不受數組的內部數組指針的影響。 array_walk()將遍歷整個數組,而不管指針 的位置。
鑑於這種情況,你可以在你想要放棄的點拋出異常,有點假,然後捕捉並忽略它:
$array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
try {
array_walk($array, function($value) {
echo "$value\n";
if ($value == 5) {
throw new Exception();
}
});
} catch (Exception $e) {
}
產量:
1
2
3
4
5
像打出來內部循環?我不這麼認爲。 –
短路?你能擴大嗎? – Thamilan
http://php.net/manual/en/function.array-reduce.php –