0

複数のオプション名と複数のオプション値があります。foreach オプション名のすべての値を表示するにはどうすればよいですか?

私のコードはこれを行います:

Roses (option name) are red (option value)
Roses are blue
Roses are white

このように表示したい方法:

Roses are red, blue, white

これが私の現在のコードです:

<?php 
    foreach ($product['option'] as $option) { ?>
        - <small>
        <?php echo $option['name']; ?> 
        are 
        <?php echo $option['value']; ?></small><br />
        
<?php } ?>
4

3 に答える 3

0

私があなたのコードを理解していれば、次のことができます:

Roses are
<?php
    foreach ($product['option'] as $option) {
        echo "$option['value'], ";
    }
?>

(「Roses」という変更を変更するかもしれませんが、この名前がコードのどこにあるのかわかりません。)

于 2013-06-09T18:33:04.097 に答える
0

を保存し$option['name']て、前の反復と同じかどうかをテストするだけです。

<?php
    $previous = null;
    foreach ($product['option'] as $option) {
        if ($option['name'] == $previous) {
            echo ", {$option['value']}";
        }
        else {
            if ($previous)
                echo "</small><br/>";
        ?>
        - <small><?php echo $option['name']; ?> are
        <?php echo $option['value'];
        }
        $previous = $option['name'];
    }
    echo "</small><br/>"; ?>

私のコードは少し乱雑でテストされていませんが、あなたはその考えを理解していると思います:)

于 2013-06-09T18:33:22.203 に答える