この投稿は、snowlove によって最終編集されました: 2013-06-17 18:27:34
<?php<br />
function newtripos($str,$findstr,$count,$off=0){<br />
$pos=stripos($str,$findstr,$off);<br />
$count--;<br />
if($count>0 && $pos!=false){<br />
$pos=newtripos($str,$findstr,$count,$pos+1);<br />
}else{<br />
var_dump($pos);<br />
return $pos;<br />
}<br />
}<br />
$a="456123456455654466";<br />
$b=newtripos($a,'6',4);<br />
var_dump($b);<br />
?>
実行後、$b が null であることが表示されます。関数が戻る前に、実行された var_dump($pos) によって int(16) が表示されます。
var_dump($b) が null なのはなぜですか?