我是一个新手php,我有以下多维数组在joomla。
例如,我使用print_r(因为它是动态的)有以下数组:stdClass Object
(
[pressrelease_title] => Array
(
[0] => جريدة الفجر
[1] => جريدة الفجر
[2] => جريدة الوطن
[3] => جريدة أخبار اليوم
[4] => جريدة الشروق
[5] => صدى البلد
)
[pressrelease_url] => Array
(
[0] => url1
[1] => url2
[2] => url3
[3] => url4
[4] => url5
[5] => url6
)
[pressrelease_desc] => Array
(
[0] => بالصور.. وزير المالية يطلق الإصدار السنوي الثاني لـ "موازنة المواطن"
[1] => دميان: "موازنة المواطن" تفتح المجال لإشراك المواطنين في صياغة السياسات الاقتصادية
[2] => وزير المالية يطلق الإصدار السنوي الثاني لـ"موازنة المواطن"
[3] => بمشاركة ممثلين عن البنك الدولي و6 وزارات وخبراء المجتمع المدني.. الثلاثاء .. وزير المالية يطلق الإصدار السنوي الثاني لموازنة المواطن
[4] => وزير المالية: إصدار صكوك إسلامية لتلبية احتياجات شريحة جديدة من المدخرين
[5] => اليوم.. "المالية" تطلق إصدارها الثاني لموازنة المواطن
)
)
下面是对press releases数组进行迭代的代码。这个问题只显示了三个结果,不多不少。
<?php
//$press_releases= json_decode($params->get('repeated_press'),true);
$press_release = json_decode($attribs->repeated_press);
$press_n = count((array)$press_release);
for ($x = 0; $x < $press_n ; $x++) {
echo '<div class="press_item" id="press_item'.($x+1).'">';
echo '<div class="title">'.$press_release->pressrelease_title[$x].'</div>';
echo '<div class="url"><a target="_blank" href="'.$press_release->pressrelease_url[$x].'">'.$press_release->pressrelease_desc[$x].'</a></div>';
echo '</div>
';
}
?>
您希望计数为每个数组中的元素个数,而不是数组的个数。
改变$press_n = count((array)$press_release);
$press_n = count($press_release->pressrelease_title);
第二行将计算$press_release
(3个数组块中的第一个)的第一个成员中的元素