Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在每次刷新页面时获得3个随机行?_Php_Mysql_Magento_Magento 1.5 - Fatal编程技术网

Php 如何在每次刷新页面时获得3个随机行?

Php 如何在每次刷新页面时获得3个随机行?,php,mysql,magento,magento-1.5,Php,Mysql,Magento,Magento 1.5,我有以下代码: <?php $i = 0; ?> <?php foreach ($this->getMyCollection() as $faqItem): ?> <a class="anchor" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) ?>faq#<?php echo $i ?>"><?php

我有以下代码:

<?php $i = 0; ?>

    <?php foreach ($this->getMyCollection() as $faqItem): ?>
        <a class="anchor" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) ?>faq#<?php echo $i ?>"><?php echo $this->htmlEscape($faqItem->getQuestion()) ?></a><br>
    <?php
        $i++;
        if($i>2)break;
    ?>
    <?php endforeach; ?>
但我想显示的是每次刷新页面时有三行不同的内容。我该怎么做?

试试这个:

使用,可以传递数组,并定义所需的结果数。它将返回您想要使用的给定数量的密钥

<?php $i = 0;
$items = $this->getMyCollection();
$keys = array_rand($items, 3);
foreach ($keys as $key): 
{

    $faqItem = $items[$key];
?>

    <a class="anchor" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) ?>faq#<?php echo $i ?>"><?php echo $this->htmlEscape($faqItem->getQuestion()) ?></a><br>
<?php
    $i++;
} ?>
或选项2,使用以下功能:

<?php foreach (shuffle($this->getMyCollection()) as $faqItem): ?>
    <a class="anchor" href="<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) ?>faq#<?php echo $i ?>"><?php echo $this->htmlEscape($faqItem->getQuestion()) ?></a><br>
<?php
    $i++;
    if($i>2)break;
?>
<?php endforeach; ?>