-1

停止しない WHILE ループが実行されています。while 条件を $x<50 に変更すると、期待どおりの結果が得られますが、多くの空の結果が返されます。データがなくなり次第終了したいと思います。

$x=20 を設定して条件を確認し、$y の var_dump を実行すると NULL が返されるため、$y==NULL のときにループが停止しない理由がわかりません。

致命的なエラーが発生し続けます: 許可されたメモリが使い果たされました。

変数 $y を文字列にキャストし、 $y!=="" およびその他のバリエーションをチェックしようとしましたが、ループは条件を認識して停止していないようです。

助けてくれてありがとう。

$c=1;
$x=0;
$y=$xmlobj->simpleXML->table1->Detail_Collection->Detail[$x];

while($y!==NULL){
    $obj->table_data['country_' . $c] = array();
    $obj->table_data['country_' . $c]['country'] = (string)$xmlobj->simpleXML->table1->Detail_Collection->Detail->{$x}['COUNTRY'];
    $obj->table_data['country_' . $c]['fund_percentage'] = (string)$xmlobj->simpleXML->table1->Detail_Collection->Detail->{$x}['FUNDPCT'];
    $obj->table_data['country_' . $c]['index'] = (string)$xmlobj->simpleXML->table1->Detail_Collection->Detail->{$x}['Index'];

    ++$x;
    ++$c;

   }
4

1 に答える 1