0

我有点像编程菜鸟,我遇到了一个问题,试图只回显我的数组中的几个项目,而不是数组中的所有项目。

所以我有一个包含我的数组 $products 的 products.php 文件,我现在正试图从我的索引页面调用这个数组,我不仅想调用数组,而且要让数组中的产品列出最后 4 个产品,而不是全部。

所以现在在我的 index.php 中我创建了这个代码:

$total_products = count($products);
$position = 0;
$list_view_html = "";
foreach($products as $product_id => $product) {
$position = $position + 1;
if($total_product - $position < 4){
$list_view_html = $list_view_html . get_list_view_html($product_id,$product);
}
} 
echo $list_view_html;

现在,当我保存并加载网页时,我仍然看到列出的所有产品,而不是我应该看到的 4。

据我了解,我正在计算数组中的产品,从 0 开始循环,循环遍历数组,然后增加计数 +1。然后我说如果循环位置的产品少于我想要显示的 4 个项目。

我知道代码可能不是提高效率的最佳方式,或者它有一定的批评。我感谢所有的帮助,但我只需要弄清楚为什么我不能让它工作。

任何帮助表示赞赏,越少居高临下越好。

多谢你们

4

2 回答 2

3

这似乎是获取最后 4 个项目的一种非常复杂的方法。

我建议使用array_slice

$last_four = array_slice($products, 0, -4);

和一个简单的foreach循环。

于 2013-02-12T21:11:02.487 回答
2

这是一个错字。将 if 更改为:

if($total_products - $position < 4){

请注意,var 的名称是$total_products. 您正在使用$total_product没有“s”和结尾。

于 2013-02-12T21:08:56.690 回答