您如何限制foreach的输出?

时间:2019-05-28 10:20:14

标签: javascript php

我需要创建一个网站,在该网站上可以为属性添加书签,然后只有几个属性显示在主页上。 我已经有了使用cookie的已添加书签的属性的列表,但是当出现在Hoempage上时,我在限制输出方面遇到了问题。

PromiseResult<T>

2 个答案:

答案 0 :(得分:0)

因此,只需在现有循环中维护一个简单的计数器即可

<h2>Previously seen properties</h2>
<?php

if(isset($_COOKIE["bookmark"]))
{
    $total = 0;
    $cookie_data = stripslashes($_COOKIE['bookmark']);//removes backslashes
    $bookmark_data = json_decode($cookie_data, true);//converts JSON string to PHP variable

    // initialise the counter
    $cnt = 0;

    foreach($bookmark_data as $keys => $values) {
        if ($cnt == 2) {
            // only show 2
            break;
        }
        $cnt++;

?> 
    <!---what will be displayed--->

        <div style="border:1px solid #ccc; border-radius:5px; padding:16px; margin-bottom:16px;width:300px; height:300px;">
            <img src="../01_Global/assets/img/Houses/'. $row['Image'] .'" alt="" class="img-responsive" >
            <p align="center"><strong><a href="productpage.php"> <?php echo $values["property_name"]; ?></a></strong></p>
            <h4 style="text-align:center;" class="text-danger" > <?php echo $values["property_price"]; ?></h4>
        </div>
<?php
    }
} else {
    echo '';
}
?>

答案 1 :(得分:0)

您可以使用计数器和条件来打破循环:

<?php
$one_to_five = range(1, 5);
$break_out   = 3;    
$counter     = 0;
foreach($one_to_five as $num) {
    $counter++;
    if($counter > $break_out)
        break;
    echo $num, "\n";
}

输出:

1
2
3