我正在进行一个php调用,并且响应在foreach函数中用于填充表。
我的表格单元格包含大量的空白,看起来它来自php响应。
以下是摘录,当您查看TD元素时,您可以看到额外的空间。
不确定导致这种情况或如何移除它,可能是修剪?
<div class="container-fluid" style="margin-top:2em;">
<div class="row">
<div class="col-lg-12" style="background: none;">
<h4>Test Drives</h4>
<table class="table table-fixed table-sm table-hover" style="height: 100px; background:pink;">
<thead>
<tr>
<th>
Value
</th>
<th>
Date Submitted
</th>
<th>
User submitted
</th>
<th>
Market
</th>
<th>
Notes
</th>
<th>
Last Update by
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
2 </td>
<td>
2017-03-08 </td>
<td>
ADMIN </td>
<td>
DE </td>
<td>
This is a test </td>
<td>
ADMIN </td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
以下是我的html中的PHP代码:
<div class="container-fluid" style="margin-top:2em;">
<div class="row">
<div class="col-lg-12" style="background: none;">
<h4>Test Drives</h4>
<?php include 'campaign_detail.inc.php'; ?>
<table class="table table-fixed table-sm table-hover" style="height: 100px; background:pink;">
<thead>
<tr>
<th>
Value
</th>
<th>
Date Submitted
</th>
<th>
User submitted
</th>
<th>
Market
</th>
<th>
Notes
</th>
<th>
Last Update by
</th>
</tr>
</thead>
<tbody>
<?php foreach($testdrives as $tdrrow) {?>
<tr>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_VALUE]";?>
</td>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_DATE_CREATED]";?>
</td>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_USER_CREATED]";?>
</td>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_MARKET]";?>
</td>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_NOTES]";?>
</td>
<td>
<?php echo "$tdrrow[CAMPAIGN_DATA_USER_UPDATED]";?>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</div>
</div>
答案 0 :(得分:5)
您可以使用下面的trim()
: -
<?php echo trim("$tdrrow[CAMPAIGN_DATA_VALUE]");?>
等等其他人
同时删除您为 缩进
创建的额外空格注意: -
@ Fred-ii-有价值的评论: -
旁注:如果您还需要干净的HTML,这是必须从源代码调试的好方法,那就是添加\n's
。
即。 :<?php echo trim("$tdrrow[CAMPAIGN_DATA_VALUE]") . "\n";?>
- 否则,您可能会在一行中获得一堆代码。
答案 1 :(得分:3)
您的空格是通过HTML缩进创建的。
使用<td><?= trim($tdrrow[CAMPAIGN_DATA_VALUE]);?></td>
答案 2 :(得分:1)
从https://stackoverflow.com/a/2109339/7403455
复制仅适用于空格,请使用str_replace:
$string = str_replace(' ', '', $string);
对于所有空格,请使用preg_replace:
$string = preg_replace('/\s+/', '', $string);
正如simba建议的还要清理生成此HTML输出的PHP。