$array[] = testFunc($test);
function testFunc($value){
if(!empty($value)){
$str = $value;
}
return $str;
}
簡素的ですが、このようなコードがあるとします。
$testが空の場合は、配列($array)に値が入って欲しくないのですが、空の値が入ってしまいます。
$testに値がない場合に配列に代入しないようにするには、どうすればいいのでしょうか?
以下の方法以外で教えて下さい。
if(!empty($test)){$array[] = testFunc($test);}
結果は配列で管理するということでよければ、下記のような実装方法でどうでしょうか。
<?php // 初期化 $myArray = array(); // データを追加 $myArray = testFunc( $myArray, "apple"); print_r( $myArray ); // 空のデータ:追加されない $myArray = testFunc( $myArray, "" ); print_r( $myArray ); // データを追加 $myArray = testFunc( $myArray, "banana"); print_r( $myArray ); // データガからでなければ配列に追加 function testFunc($array, $value){ if(!empty($value)){ array_push( $array, $value ); } return $array; } ?>
結果は下記の通りです。
Array ( [0] => apple )
Array ( [0] => apple )
Array ( [0] => apple [1] => banana )
こういう形にすればいいのでは。
function testFunc($value) { if (empty($value)) return null ; $str = $value; return $str; }
上記の方法では、空の場合でも配列に値が入ります。
こちらの方法で行けました。勉強になります。ありがとうございました。