【问题标题】:How to: Format a MySQL query result with currency signs using PHP如何:使用 PHP 格式化带有货币符号的 MySQL 查询结果
【发布时间】:2011-10-07 06:09:58
【问题描述】:

我有一个 MySQL 查询,它从表中获取数值 VARCHAR (20),我需要将结果格式化为在两个位置包含千位分隔符 (,) 和小数分隔符 (.)。

我已经搜索了很多简单的查询,所以现在我想知道这是否可以使用 CSS。

这是表格数据:

收入 ------------------ 1234456789 234456000 987456000

等等。这是查询:

// Fetch data

$sql="SELECT * FROM scoreboard WHERE codcliente = '".$q."' OR nombre LIKE '%".$q."%'";
$result = mysql_query($sql);
if(mysql_num_rows($result) == 0){
  echo '<div align="center" style="background-color:#CCCCCC; font-weight:bold; color:#C0504D;">Record no existe.&nbsp;&nbsp;&nbsp;<input id="srchcreate" type="button" value="Crear" /></div>';
  return;
  }
//echo $result;

结果:

// Construct the table

echo "<table>";

// Construct the array

while($row = mysql_fetch_array($result)){
  echo "<tr>";
  echo "<td>" . $row['codcliente'] . "</td>";
  echo "<td>" . $row['nombre'] . "</td>";
//  echo "<td>" . $row['ejecutivo'] . "</td>";
//  echo "<td>" . $row['banca_as400'] . "</td>";
//  echo "<td>" . $row['banca_real'] . "</td>";
//  echo "<td>" . $row['ingresos'] . "</td>";
  echo "<td>" . $row['ciiu'] . "</td>";
//  echo "<td>" . $row['division'] . "</td>";
  echo "<td>" . $row['actividad'] . "</td>";
  echo "<td>" . $row['riesgo_industria'] . "</td>";
  echo "<td>" . $row['riesgo_cliente'] . "</td>";
  echo "<td>" . $row['fecha'] . "</td>";
  echo "<td>" . $row['analista'] . "</td>";
  echo "</tr>";
}
echo "</table>";

这会被插入到 PHP 文件中并显示为表格。

【问题讨论】:

  • 您不想为查询设置样式/格式。您想要格式化输出。您需要告诉我们您使用什么语言将查询传递给数据库并将结果传递给浏览器。最好粘贴一些代码示例。
  • css 可以设置样式,而不是改变实际内容。
  • 谢谢大家,但这就是我的意思,格式化结果而不是查询,我的问题是这样写的。我将更新问题标题并粘贴一些代码。我正在使用 PHP/MySQL/AJAX。

标签: mysql css formatting currency number-formatting


【解决方案1】:

不,CSS 不是为此而设计的。

JavaScript 确实有这种能力。

【讨论】:

    【解决方案2】:
    <?php
    echo number_format(123456789, 2);
    ?>
    

    123,456,789.00

    echo "<td>".number_format($row['ingresos'], 2)."</td>\n"
    

    【讨论】:

    • 谢谢,我已经研究过了,但我不能使用它,因为结果是动态构造的。如果您能告诉我如何将其添加到 echo "&lt;td&gt;{$row['ingresos']}&lt;/td&gt;\n",那么我们就可以开展业务了。
    • @rdrgrtz,动态是 PHP 的重点,请参阅更新的答案;)
    • 太棒了@webarto!有什么办法可以在前面放一个($)?还是我在推动它?
    • @rdrgrtz,只需先将"&lt;td&gt;" 更改为"&lt;td&gt;($)" :)
    • 有效,但与"&lt;td&gt;($)" 相比,它与"&lt;td&gt;$nbsp;" @webarto 一起使用效果更好
    猜你喜欢
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2018-03-29
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多