我有兴趣用php解决下一个问题:
我使用php来填充html页面中的表,使用来自MySql的数据。这很好,但我需要使用“。”来填充名称和值之间的空格。我写了一个非常简单的样本,只是为了说明问题所在。
//values in database:
$name1=Weight of bag $value1=100
$name2= Bag type $value2=Oval
<table>
<tr>
<td>$name1</td>
<td>$value1</td>
</tr>
<tr>
<td>$name2</td>
<td>$value2</td>
</tr>
etc...
</table>
结果页面上的一切正常,我以这种格式从数据库中获取所有数据:
Weight of bag 100
Bag type Oval
我需要结果是这样的:
Weight of bag........100
Bag type............Oval
我的问题是用“。”填充第一个标签的右侧,以及第二个标签的左侧。我尝试了一些基本的PHP函数,但没有结果。
感谢名单
答案 0 :(得分:1)
试试这个
<?php $input = 'Weight of bag 100'; echo $output = preg_replace('/(?:\s\s+|\n|\t)/', '......', $input); ?>
结果就像这样
包的重量...... 100
答案 1 :(得分:1)
请尝试以下操作:
<style type="text/css">
table {
width: 200px;
}
td span {
background-color: #FFF;
}
td.name:before {
clip: rect(0px, 190px, 20px, 0px);
content: " ............................................................ ";
position: absolute;
z-index: -1;
}
td.amt {
text-align: right;
}
</style>
<table>
<tr>
<td class="name"><span>Weight of bag</span></td>
<td class="amt"><span>100</span></td>
</tr>
<tr>
<td class="name"><span>Bag type</span></td>
<td class="amt"><span>Oval</span></td>
</tr>
</table>
的演示:强>
答案 2 :(得分:0)
您可以摆脱表格,以等宽字体输出,并手动填充点。
这里有可填充点的功能:http://php.net//manual/ru/function.str-pad.php#81944
function pad_between_strings($string1, $string2, $length, $char = " ") {
$fill_length = $length - ( strlen($string1) + strlen($string2) );
return $string1 . str_repeat($char, $fill_length) . $string2;
}
答案 3 :(得分:-1)
<table>
<tr>
<td>$name1........</td>
<td>$value1.......</td>
</tr>
<tr>
<td>........$name2</td>
<td>........$value2</td>
</tr>
</table>