【问题标题】:PHP Loop for, and simplexml_load_filePHP 循环 for 和 simplexml_load_file
【发布时间】:2016-10-16 19:03:59
【问题描述】:

如何使用 simplexml_load_file 的循环来获取所有数据?

$meteo = simplexml_load_file('hxxp://dzmeteo.com/weather.xml');
for($i=1;$i<$jours;$i++) {
   $d1_icon_d = $meteo->dayf->day[$i]->part[0]->icon;
   $d1_icon_n = $meteo->dayf->day[$i]->part[1]->icon;
   echo $d1_icon_d;
   $i++;
}

【问题讨论】:

    标签: php xml loops parsing for-loop


    【解决方案1】:

    你很接近:

    $meteo = simplexml_load_file('hxxp://dzmeteo.com/weather.xml');
    foreach ($meteo->dayf->day as  $day) {
       $d1_icon_d = $day->part[0]->icon;
       $d1_icon_n = $day->part[1]->icon;
       echo $d1_icon_d;
    }
    

    任何时候您想访问整个阵列上的内容,请使用foreach。它提供了一种可靠的方法来确保您实际看到了数组的所有元素,并使您的代码对您自己和其他人都可读。

    【讨论】:

    • 使用 foreach ($meteo->dayf->day as $day) {
    【解决方案2】:

    在循环结束时删除$i++;。 for 循环将为您增加索引,因此现在您将获得第 1、3、5、7 行等等,而不是 1、2、3、4、5、6。另外我不确定这是否是故意的,但通常索引从 0 开始,而您的索引从 1 开始。

    【讨论】:

    • 甚至删除 $i++;它什么都不显示
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多