Php wordpress函数的foreach循环的语法问题

Php wordpress函数的foreach循环的语法问题,php,wordpress,function,foreach,Php,Wordpress,Function,Foreach,更新 我的小部件被设置为输出div,而不是li元素,因此$widgets\u数组是无用的。 我通过更改post->ID解决了这个问题; $widgetnumber=intval(get_post_meta($posted,'widget_number',true)); var_转储($widgetnumber); var_dump($车身); 对于($i=0;isset($body[$i])&&$i

更新

我的小部件被设置为输出div,而不是li元素,因此$widgets\u数组是无用的。 我通过更改
post->ID解决了这个问题;
$widgetnumber=intval(get_post_meta($posted,'widget_number',true));
var_转储($widgetnumber);
var_dump($车身);
对于($i=0;isset($body[$i])&&$i<$widgetnumber;$i++){
$final_html.=$i.'.$body[$i];
}
}
否则{
$final_html=“”;
}
ob_end_clean();
echo$final_html;
}
HTML输出为:

0
    <div class="ad-feature">
        <a class="widget_sp_image-image-link" target="_blank" href="http://www.toysrus.com/shop/index.jsp?categoryId=2255956" target=""><img alt='' src="https://.../wordpress/wp-content/uploads/2012/01/ad.jpg" style="" /></a>
    </div>

    <div class="ad-feature">
        <a class="widget_sp_image-image-link" target="_blank" href="http://jcp.is/JCPMerchTab" target=""><img alt='JCPenny' src="http://.../wordpress/wp-content/uploads/2012/01/Tshirtad2.png" style="" /></a>
    </div> 
0

另外,放置
var_dump($widget)
var\u dumb($body)
不输出任何内容。

尝试用此替换您的
foreach
,看看它是否符合您的要求:

for ($i = 0; isset($body[$i]) && $i < $widgetnumber; $i++) {
    $final_html .= $i.' '.$body[$i];
}
for($i=0;isset($body[$i])&&$i<$widgetnumber;$i++){
$final_html.=$i.'.$body[$i];
}

var\u dump($widgetnumber)时,您会得到什么就在出发前?谢谢你的建议<代码>变量转储($widgetnumber)不输出任何内容。。。但是
echo$widgetnumber
尝试将
!=0
更改为
!==0
,则foreach中的code>输出正确的数字
。谢谢Paul,但这并没有改变任何内容。Dave感谢您的回答…它仍然输出两个小部件以及“0”请你用它产生的确切输出编辑这个问题,以及如果你在循环之前立即使用
var\u dump($body)
var\u dump($widgetnumber)
,你会得到什么。我发现我的小部件使用的是
s,而不是
  • s,因此没有被拆分
    for ($i = 0; isset($body[$i]) && $i < $widgetnumber; $i++) {
        $final_html .= $i.' '.$body[$i];
    }