首页 > 解决方案 > echo "string" 时出现奇怪的结果。功能()

问题描述

我有一个添加美元符号并将数字格式化为两位小数的函数。就像廉价转换成货币一样。

function money($num){
    echo "$" . number_format($num , 2 , "." , ",");
  }

然后我回显这样的字符串:

echo "Your new sun-total is: " . money($subtotal);

我得到:

$25.75您的新小计是:

任何见解将不胜感激。谢谢。

标签: phpfunctionecho

解决方案


这一行:

echo "Your new sun-total is: " . money($subtotal);

调用该money()函数,并在回显之前将结果附加到文本中。

您的money()函数在返回之前会回显格式化的数字,因此您首先会看到它。money()不返回任何内容,因此您的初始行会回显没有附加任何内容的文本。

像这样更改您的money()功能:

function money($num){
    return "$" . number_format($num , 2 , "." , ",");
  }

推荐阅读