将PHP重复节/数组封装为字符串
我有一个MySQL查找中的重复部分-代码(包括HTML)如下:将PHP重复节/数组封装为字符串,php,html,arrays,string,Php,Html,Arrays,String,我有一个MySQL查找中的重复部分-代码(包括HTML)如下: (编辑为包含周围的HTML)您可以将其与HTML一起粘贴吗?如果没有,为什么要结束php并一次又一次地启动它 PS:在第二行,你有“php if”,但你还没有用?>关闭前面的代码,你忘记了“你需要从第二行开始删除php。然后代码运行良好。我建议让这段代码更具可读性: <?php do { if (substr($row_mDetails['Lo'], 0, 1) === '-') { echo str_
(编辑为包含周围的HTML)您可以将其与HTML一起粘贴吗?如果没有,为什么要结束php并一次又一次地启动它
PS:在第二行,你有“php if”,但你还没有用?>关闭前面的代码,你忘记了“你需要从第二行开始删除
php
。然后代码运行良好。我建议让这段代码更具可读性:
<?php
do {
if (substr($row_mDetails['Lo'], 0, 1) === '-') {
echo str_replace('.', '', number_format($row_mDetails['Lo'], 5));
} else {
echo '+' . str_replace('.', '', number_format($row_mDetails['Lo'], 5));
}
?> | <?php
if (substr($row_mDetails['La'], 0, 1) === '-') {
echo str_replace('.', '', number_format($row_mDetails['La'], 5));
} else {
echo '+' . str_replace('.', '', number_format($row_mDetails['La'], 5));
}
?> | <?php
echo $row_mDetails['Name'];
?> | 0 |<br> <?php
} while ($row_mDetails = mysql_fetch_assoc($mDetails));
?>
与
以避免打开和关闭标记
编辑
如果要在循环中构建字符串,可以执行以下操作:
do {
if (substr($row_mDetails['Lo'], 0, 1) === '-') {
$str .= str_replace('.', '', number_format($row_mDetails['Lo'], 5));
} else {
$str .= '+' . str_replace('.', '', number_format($row_mDetails['Lo'], 5));
}
$str .= " | ";
if (substr($row_mDetails['La'], 0, 1) === '-') {
$str .= str_replace('.', '', number_format($row_mDetails['La'], 5));
} else {
$str .= '+' . str_replace('.', '', number_format($row_mDetails['La'], 5));
}
$str .= " | " . $row_mDetails['Name'] . " | 0 |<br> ";
} while ($row_mDetails = mysql_fetch_assoc($mDetails));
do{
if(substr($row\u mDetails['Lo',0,1)='-'){
$str.=str_replace('.','',number_格式($row_mDetails['Lo'],5));
}否则{
$str.='+'.str_替换('.','',数字格式($row_mDetails['Lo'],5));
}
$str.=“|”;
if(substr($row\u mDetails['La',0,1)='-')){
$str.=str_replace('.','',number_格式($row_mDetails['La'],5));
}否则{
$str.='+'.str_替换('.','',数字格式($row_mDetails['La'],5));
}
$str.=“|”。$row_mDetails['Name']。”| 0 |
“;
}而($row_mDetails=mysql_fetch_assoc($mDetails));
谢谢你的好的实践技巧,Tom。我想做的是让它达到这样一个程度,我可以(使用上面的代码)像$datstring=do{if(substr($row_-mDetails['Lo'],0,1)=='-'{echo-stru-replace('.','',number-u-format($row_-mDetails['Lo'],5))}否则{echo'+.str replace('.','',数字格式($row_-mDetails['Lo'],5));}?>|这有两个问题。首先,你不能将循环的结果分配给这样的变量。其次,
之外的部分不能由PHP计算,因此它们不能成为字符串的一部分。我想可能是这样的。我有什么选择来获得我想要的?非常感谢。这是一个漂亮的例子l解决方案。谢谢你的慷慨时间。当然。目前没有太多,但我现在已经包括了其中的内容。
<?php
do {
if (substr($row_mDetails['Lo'], 0, 1) === '-') {
echo str_replace('.', '', number_format($row_mDetails['Lo'], 5));
} else {
echo '+' . str_replace('.', '', number_format($row_mDetails['Lo'], 5));
}
?> | <?php
if (substr($row_mDetails['La'], 0, 1) === '-') {
echo str_replace('.', '', number_format($row_mDetails['La'], 5));
} else {
echo '+' . str_replace('.', '', number_format($row_mDetails['La'], 5));
}
?> | <?php
echo $row_mDetails['Name'];
?> | 0 |<br> <?php
} while ($row_mDetails = mysql_fetch_assoc($mDetails));
?>
?> | <?php
echo " | ";
do {
if (substr($row_mDetails['Lo'], 0, 1) === '-') {
$str .= str_replace('.', '', number_format($row_mDetails['Lo'], 5));
} else {
$str .= '+' . str_replace('.', '', number_format($row_mDetails['Lo'], 5));
}
$str .= " | ";
if (substr($row_mDetails['La'], 0, 1) === '-') {
$str .= str_replace('.', '', number_format($row_mDetails['La'], 5));
} else {
$str .= '+' . str_replace('.', '', number_format($row_mDetails['La'], 5));
}
$str .= " | " . $row_mDetails['Name'] . " | 0 |<br> ";
} while ($row_mDetails = mysql_fetch_assoc($mDetails));