变量的PHP回显替换 - $variable [重复]
Posted
技术标签:
【中文标题】变量的PHP回显替换 - $variable [重复]【英文标题】:PHP echo replacement for a variable - $variable [duplicate]变量的PHP回显替换 - $variable [重复] 【发布时间】:2012-10-17 15:21:41 【问题描述】:可能重复:Curly braces in string in 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 %
但不知道如何...
【问题讨论】:
$variable
与 $variable;
相同 - 请参阅 codepad.org/wKh1zaE6
在我的情况下,它不是 :) 没有 它不会回应它......
是$variable
还是$variable
?
请添加更多上下文,以便我们可以看到您正在处理的内容,因为假设您的 php 在处理花括号方面是特殊的是不合逻辑的。
我编辑了原始问题,并添加了实际代码...
【参考方案1】:
这不是 PHP 变量。这是模板引擎变量或类似用 javascript 编写的脚本的一部分。
它的外部 PHP 脚本(由 <?php ?>
定义)。
阅读模板引擎或该脚本手册了解更多信息。
无法从 PHP 访问它,因为这是在服务器将 html 页面发送到浏览器之后,由客户端机器上的 JavaScript 处理的。 PHP 是在服务器上处理的,不能直接在浏览器和 PHP 代码之间传递变量。
【讨论】:
【参考方案2】:$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 $variablename";
// 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,以便它这样做:)
【讨论】:
【参考方案3】:您正在使用一个名为 TMPL 的 jquery 插件(现在不支持)。
您应该通过 javascript 转换您的数据。
$savings_percentage.toFixed(2)
您可以使用本机 .toFixed
方法或使用一些帮助程序(例如参见 this question)
【讨论】:
这成功了,非常感谢 :) 有没有机会将 . 替换为 , ?目前,它是 3.23 %,可以这样制作:3,23 % 用 , 而不是 。 b> ? @NikolaNastevski 看到我回答中的链接 :) ***.com/questions/10351003/… 好的,明白了,非常感谢您的帮助;)我还要感谢所有其他试图帮助我的人,非常感谢您的帮助;)以上是关于变量的PHP回显替换 - $variable [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Apache 2.4 中重定向 /path/variables/ 以重写为 /index.php/path/variables/?