0

データベースからの 3 つのレコードの各セットの後に、新しいテーブル行または新しいブレークを作成しようとしています。

コードの一部を含めました:

<?php foreach ($payment_methods as $payment_method) {?>
    <?php if ($payment_method['code'] == $code || !$code) { ?>

        <?php $code = $payment_method['code']; ?>
        <input type="radio" name="payment_method" value="<?php echo $payment_method['code']; ?>" id="<?php echo $payment_method['code']; ?>"/>
    <?php } ?>
    <label for="<?php echo $payment_method['code']; ?>"><?php echo $payment_method['title']; ?></label>
<?php } ?>
4

2 に答える 2

1

あなたの質問が届くことを願っています。foreach の 3 回目のループごとに改行を要求していると思います。

これを行う方法の例を次に示します。

<?php $i=0;?>
<?php foreach ($payment_methods as $payment_method):?>
    <?php if($i++ % 3 == 0){echo "<br>";} /* replace br with tr tags if you want*/ ?>
    <?php if ($payment_method['code'] == $code || !$code): ?>
        <?php $code = $payment_method['code']; ?>
        <input type="radio" name="payment_method" value="<?php echo $payment_method['code']; ?>" id="<?php echo $payment_method['code']; ?>"/>
    <?php endif; ?>
        <label for="<?php echo $payment_method['code']; ?>"><?php echo $payment_method['title']; ?></label>
<?php endforeach; ?>
于 2013-01-10T15:58:56.900 に答える
0
for($i = 0; $i < count($payment_methods); $i++) {
  // line break after 3 records
  if($i != 0 && $i % 3 == 0)
    echo '<br />';

  if ($payment_methods[$i]['code'] == $code || !$code) {
    $code = $payment_methods[$i]['code'];
    echo '<input type="radio" name="payment_method" value="', $payment_methods[$i]['code'], '" id="', $payment_methods[$i]['code'], '" />';
  }
    echo '<label for="', $payment_methods[$i]['code'], '">', $payment_methods[$i]['title'], '</label>';
}
于 2013-01-10T13:59:14.673 に答える