用PHP计算百分比
如果我有一个小问题,我想 我成功地将此答案中的代码用于某个问题: 它工作得很好。我的输出是例如9,1。 现在我想把这个作为一个百分比,所以应该是91%用PHP计算百分比,php,percentage,Php,Percentage,如果我有一个小问题,我想 我成功地将此答案中的代码用于某个问题: 它工作得很好。我的输出是例如9,1。 现在我想把这个作为一个百分比,所以应该是91% $second\u步骤[0]给出9,1 我使用以下代码将其设置为百分比: $score=$second_步骤[0]*10 …但这将输出90而不是91 我做错了什么?它看起来像一个简单的代码,但我不确定为什么它输出90而不是91 希望有人能帮我 对不起,我的英语不好:)可能与数字格式有关。您的示例显示了9[comma]1,PHP将其视为字符串,并在
$second\u步骤[0]
给出9,1
我使用以下代码将其设置为百分比:
$score=$second_步骤[0]*10代码>
…但这将输出90而不是91
我做错了什么?它看起来像一个简单的代码,但我不确定为什么它输出90而不是91
希望有人能帮我
对不起,我的英语不好:)可能与数字格式有关。您的示例显示了9[comma]1,PHP将其视为字符串,并在计算时返回脚本遇到的第一个数字部分(仅为9)。如果你想做数学运算,你需要把它转换成一个数字(读9[period]1)
你得到90是因为它把10看作一个整数。
因此,您的输出将转换为int
试试这个:
$score=$second_step[0]*10.0强>
PHP将10视为int,但将10.0视为float。
您也可以通过如下方式将10掷到一个浮点数上:
$score=$second_step[0]*floatval(10)强>
两种方法都可以,但第一种方法最好。试试这个
$val = floatval(str_replace(',', '', $second_step[0]));
您的$second\u步骤
被视为整数,请参见,除非您使用()明确更改脚本的区域设置
如果逗号需要保留在那里,并且您没有更改区域设置,例如,您可以执行$temp=str_replace(“,”,“,$setlocale[1])代码>感谢您的快速回复!你能告诉我如何把它转换成数字吗?我不知道该怎么办。
$val = floatval(str_replace(',', '', $second_step[0]));