我遇到了一些“奇怪的”PHP代码,所以不是这样:
<?php echo $variable; ?>
我有这个:
${variable}
我无法了解如何将其变为变量:
<?php echo number_format($variable, 2, ',', '.') ?>
有什么想法吗?
感谢。
编辑:这是实际代码:
<script id="productTemplate" type="text/x-jquery-tmpl">
<?php echo "Save:"; ?> ${savings} <?php echo "or"; ?> ${savings_percentage} <?php echo "%"; ?>
</script>
这个输出:
Save 15 or 3.2302678810608 %
我需要将 number_format 添加到 $ {savings_percentage} ,以便输出:
Save 15 or 3.23 %
但不知道如何......
答案 0 :(得分:2)
您正在使用名为TMPL的jquery插件(现在不支持)。
您应该通过javascript转换数据。
${savings_percentage.toFixed(2)}
您可以使用原生.toFixed
方法或使用某个帮助程序(请参阅例如this question)
答案 1 :(得分:1)
这不是PHP变量。这是模板引擎变量或类似于用JavaScript编写的脚本的一部分。
其外部PHP脚本(由<?php ?>
定义)。
阅读模板引擎或该脚本手册以获取更多信息。
无法从PHP 访问它,因为在服务器将html页面发送到浏览器之后,这是由客户端计算机上的JavaScript处理的。 PHP在服务器上处理,你不能直接在浏览器和PHP代码之间传递变量。
答案 2 :(得分:0)
除非它在双引号字符串中,否则与$variable
在双引号字符串中,您将使用此语法,例如,变量名称将被误解。
即。这里有一些代码回显了一个名为$variable
的变量:
$variable = "something";
echo "This is a string with a $variable";
// outputs "This is a string with a something"
这是相同的代码,但在这种情况下,变量后面紧跟着字符串“name”:
echo "This is a string with a $variablename";
// outputs "This is a string with a "
除了'错误'输出外,它还会抛出一个未定义的变量错误,因为$variablename
未定义。
这是相同的例子,使用花括号来明确变量是什么:
$variable_name = "something";
echo "This is a string with a ${variable}name";
// outputs "This is a string with somethingname"
从你的编辑:
<script id="productTemplate" type="text/x-jquery-tmpl">
<?php echo "Save:"; ?> ${savings} <?php echo "or"; ?> ${savings_percentage} <?php echo "%"; ?>
</script>
这里的变量不在php标签中,所以在php-context中查找它们的含义是不合逻辑的。它们只是纯文本,并且如脚本标记所示 - 它们旨在与(defunct)jquery tmpl函数一起使用。
我需要将number_format添加到$ {savings_percentage},以便输出:
好吧,修复你没有提到问题的js,这样做:)