美元符号和数字(Joomla + Jumi)


Dollar sign and digits (Joomla + Jumi)

我有这个字符串内容的数据库:

[$3] [$ 3] [$3.2]

需要按原样呼应它。

尝试回声时

echo "[$3] [$ 3] [$3.2]";

得到这个:

[] [$ 3] [.2]

尝试了urlencode,htmlspecialchars,但没有成功。

我如何回显并得到这个?

[$3] [$ 3] [$3.2]

编辑:

单引号没有给出想要的结果。

echo '[$3] [$ 3] [$3.2]';
[] [$ 3] [.2]

我的php版本是5.2.14,我正在使用Joomla。

编辑2:

我想通了,它不能使用单引号的原因是因为Joomla + Jumi。如果我使用纯 php - 它可以正常工作。

如果不希望对变量值进行插值,请使用单引号。

从 PHP 手册:

注意:与双引号和 heredoc 语法不同,特殊字符的变量和转义序列在单引号字符串中出现时不会扩展。

echo '[$3] [$ 3] [$3.2]';

对于这种特殊情况,引号应该无关紧要,因为 PHP 变量不能以数字开头。

例如:

echo '[$3] [$ 3] [$3.2]'; // single-quoted

将具有与以下相同的效果:

echo "[$3] [$ 3] [$3.2]"; // double-quoted

两者都应该输出:

[$3] [$ 3] [$3.2]

但是,对于有效变量,上述规则适用。

例:

$var = 'foo';
$string = 'this is a string with $var';
echo $string;

输出:

this is a string with $var

演示!

在双引号中,PHP 将以 $ 开头的任何内容解释为变量,并尝试输出 $3 的内容。

当您不希望出现这种行为时,只需使用单引号:

echo '[$3] [$ 3] [$3.2]';

单引号字符串中没有解释的变量。双引号字符串可以。

此外,双引号字符串可以包含不带反斜杠的撇号,而单引号字符串可以包含未转义的引号。

单引号字符串在运行时速度更快,因为它们不需要解析。

试试这个

 echo '[$3] [$ 3] [$3.2]';

详情请点击此处 http://php.net/manual/en/language.types.string.php