ループが終了したときに true を返そうとしていますが、発生していないようです。true または false または任意のテキストをエコーするようにできますが、何も返されません。
誰かがこれがなぜなのか説明できるのだろうか.
これは、データベース呼び出しなどを削除した(ちょっとした)関数であり、重要ではありません。
function loop_me(){
// this part is not important...
$finished = false;
$done = 0;
$userC = 1000;
$page = 0;
$count = 10;
$array = array()
$data = array('1','2','3') // big array of data...
if($done < $userC){
for($i=0; $i<$count; $i++){
$array[] = $data[$i];
}
// bellow is the important part...
if($done >= $userC){
$finished = true;
}else{
$page++;
loop_me();
}
}
if($finished){
// If I echo true it outputs 1 (this is fine)
// if I return true I get nothing this is got good as I want to do an IF statement on the
// output, which I can't do if it does not.
echo(true);
}
}
わかりましたので、問題のある関数は上にありますが、あなたを助けるために、関数の基本的な考え方は、データの配列を考えてループすることです(上には表示されていません)が、このデータはページ分割されているため、次の ' page' が最初のページで終了したら、いくつかのページがあるので、ループが終了すると、すべてが true を返すと思います。
簡単な修正かもしれません。
しかし、私はそれを解決することはできません。