我试图从数组中显示变量。我正在使用foreach循环,但是我需要在循环之前显示$ order [' campaign_name'],以便它只显示一次。我怎样才能做到这一点?如果我将其更改为$ orders [' campaign_name'],我会收到未定义的索引错误。
div {
margin-top: 12px;
width: 400px;
height: 50px;
outline: 1px solid #000;
background-image: url(http://i.magaimg.net/img/1h5k.png);
background-position: center center;
background-repeat: no-repeat;
}
#a {
background-size: cover;
}
#b {
background-size: 100% 100%;
}
#c {
background-size: contain;
}
#d {
/* Nothing */
}
答案 0 :(得分:1)
您正试图获取循环前不存在的值。您直接调用VALUE。 很容易将索引值放在数组后面 echo $ orders [0] [' campaign_name'] 它会打印你的价值。
答案 1 :(得分:0)
您需要知道要显示的数组的索引,但是如果要显示数组的第一个索引,可以使用$orders[0]['component_name']
。
<div class="table-responsive">
<table class="table" id="component-table">
<?php if ($orders) { ?>
<thead>
<tr>
<td colspan=100%><h3><?php echo $orders[0]['campaign_name']; ?></h3></td>
</tr>
</thead>
<tbody>
<?php foreach ($orders as $order) { ?>
<tr class="campaign-list" id="campaign-list">
<td><?php echo $order['component_name']; ?></td>
<td><?php echo $order['component_owner']; ?></td>
<td><?php echo $order['component_date']; ?></td>
<td><?php echo $order['campaign_code']; ?></td>
</tr>
<?php } ?>
</tbody>
<?php } else { ?>
<tbody>
<tr>
<td class="text-center" colspan="8"><?php echo $text_no_results; ?></td>
</tr>
</tbody>
<?php } ?>
</table>
</div>
答案 2 :(得分:0)
您的广告系列名称会继续响应,因为您已将其置于foreach循环中;如果您希望它只显示一次,请确保将其放在foreach循环上方。
这是一个不那么杂乱的例子:
<table>
...
<?php
if ($orders):
echo $order['campaign_name'];
foreach($orders as $order):
echo '...'; // other components
endforeach;
else:
echo $text_no_results;
endif;
?>
...
</table>