PHP回声替换为一个变量

可能重复:
PHP中字符串中的大括号

我遇到了一些“奇怪的”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 %

但不知道如何...


你正在使用一个叫做TMPL的jquery插件(现在不支持)。

你应该通过JavaScript转换你的数据。

${savings_percentage.toFixed(2)} 

您可以使用native .toFixed方法或使用一些帮助程序(请参阅此问题的示例)


这不是PHP变量。 这是模板引擎变量或类似JavaScript中编写的脚本的一部分。

它的外部PHP脚本(由<?php ?>定义)。

阅读模板引擎或脚本手册了解更多信息。

无法从PHP访问它 ,因为在服务器将html页面发送到浏览器之后,客户端计算机上的JavaScript将使用JavaScript进行处理。 PHP在服务器上处理,你不能直接在浏览器和PHP代码之间传递变量。


$ {variable}语法

除非这是在双引号字符串中,否则这与$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上下文中查找它们的含义并不合逻辑。 它们只是纯文本,并且如脚本标记所示 - 它们旨在与(已停用的)jquery tmpl函数一起使用。

我需要将number_format添加到$ {savings_percentage},以便输出:

那么,修复你没有把这个问题放在这个问题上的js,这样它:)

链接地址: http://www.djcxy.com/p/59531.html

上一篇: PHP echo replacement for a variable

下一篇: PHP Concatenation using {}