И я хочу получить первое ненулевое значение из массива, в данном случае "a". Как я мог сделать это хорошо и легко?
Ответ 1
Не уверен, что это хорошо и легко. Но короткий подход может быть:
$first = current(array_filter($sparse_array));
Где array_filter вы получите "правдивые" значения, таким образом пропуская пустые и ложные записи. Пока current просто дает вам первую из оставшихся записей.
Ответ 2
function get_first_not_null($array){
foreach($array as $v){
if($v !== null){
return $v;
}
}
return null;
}
Ответ 3
function getFirstNotNull($array) {
foreach($array as $val) {
if(!is_null($val) || !$val) return $val;
}
}
Ответ 4
$res = null;
foreach ($arr as $v) {
if ($v !== null) {
$res = $v;
break;
}
}
Ответ 5
Ну, вы могли бы попробовать это:
foreach($array as $x) {
if( $x) break;
}
if( $x) {
// $x is the first non-null value
}
else {
// There were no non-null values
}