次のスクリプトが機能しないのはなぜですか?
$arr = array();
function collect( $array , $val) {
$array[] = $val;
return $array;
}
function checkFoo( $s ) {
$valid = true;
if ( strlen( $s ) === 0 ) {
$isValid = false;
collectFoo( $arr , $s );
}
return $valid;
}
function checkBar( $t ) {
$valid = true;
if ( strlen( $s ) != 10 ) {
$isValid = false;
collectFoo( $arr , $t );
}
return $valid;
}
if ( checkFoo( $that ) && checkBar( $this ) ) {
echo "success";
} else {
print_r( $error );
}
私はいつも得ます
Notice: Undefined variable: error in /my.php on line 12
collect(...)
ここで、12行目は; の2番目の出現に似ています。
関数が返すことができる値は1つだけですが、関数が何かを返す関数で何かを返す場合はどうなりますか?内部にcollect
戻るので、それは。を返します。$array
checkBar
$valid