1

みなさん、こんにちは。私はphpの世界でまだ学んでいないので、完全に迷っています。私はすべてを試し、たくさんのブログを読みましたが、それを行う方法を理解するのに役立つものは何もありません。<ul>私は完全に機能するこのコード(以下)を持っています.. &<li>'sのおかげで、長いリストを5つの要素のブロックに分割しています。

<?php
$values = range(1, 31);
$rows = array_chunk($values, 5);


foreach ($rows as $row) {
    print "<ul>";
    foreach ($row as $value) {
        print "<li>" . $value . "</li>";
    }
    print "</ul>";
}
?>

しかし、それを他のコード(以下)とマージしようとすると、機能しなくなります。を表示するだけで、表示すら<ul>しないデータは入れられ<li>ません。

<?php 
        $product = Mage::getModel('catalog/product');
        $attributes = Mage::getResourceModel('eav/entity_attribute_collection')
        ->setEntityTypeFilter($product->getResource()->getTypeId())
        ->addFieldToFilter('attribute_code', 'manufacturer');
        $attribute = $attributes->getFirstItem()->setEntity($product->getResource());
        $manufacturers = $attribute->getSource()->getAllOptions(false);
?>


<ul> 
<?php foreach ($manufacturers as $manufacturer): ?>
    <li>
        <a href="/manufacturer/<?php echo $manufacturer['label'] ?>">
            <?php echo $manufacturer['label'] ?>
        </a>
    </li>
<?php endforeach; ?>
</ul>

これは私が試したバリアントの1つです(500エラーが表示されないもの)

<?php
$rows = array_chunk($manufacturers, 5);


foreach ($manufacturers as $manufacturer) {
    echo "<ul>";
    foreach ($row as $manufacturer) {
        echo "<li>"  ?> 
                <a href="/manufacturer/<?php echo $manufacturer['label'] ?>"><?php echo $manufacturer['label'] ?></a>
<?php   echo "</li>"; ?>
<?php    }
    echo "</ul>";
}
?>

私はおそらく自分がしていることが完全に間違っていることを知っていますが、私が言ったように、私はまだ学んでいます(私はまだ長い道のりがあります、私は知っています)。

どんな助けでもありがたいです。前もって感謝します!

編集:配列([値] => 15[ラベル]=>ジョーダン)配列([値] => 19[ラベル]=>メゾンスコッチ)配列([値] => 5[ラベル]=>博物館)配列( [value] => 17 [label] => Nike)Array([value] => 16 [label] => Nike Basket)Array([value] => 11 [label] => On Tour)Array([value] => 7 [label] => PeB)Array([value] => 14 [label] => Penfiled)Array([value] => 4 [label] => President's)Array([value] => 23 [label ] => Scotch&Soda)Array([value] => 12 [label] => Solovair)Array([value] => 13 [label] => Supra)Array([value] => 20 [label] => Vans)Array([value] => 18 [label] => Wood Wood)

4

1 に答える 1

1

変数を混ぜます。おそらく、次のようなものが必要です。

<?php
$rows = array_chunk($manufacturers, 5);

foreach ($rows as $row) {
?>
    <ul>
    <?php foreach ($row as $manufacturer) { ?>
        <li>
            <a href="/manufacturer/<?php echo $manufacturer['label']; ?>">
                this is a link
            </a>
        </li>
    <?php } ?>
    </ul>
<?php } ?>

変数が 2 つの foreach ループでどのようにカスケードされているかに注目してください。

于 2012-12-17T15:03:14.813 に答える