我有一个不会停止的 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;
}