通过变量时,美元符号文本

时间:2012-04-03 13:21:15

标签: php4

我有严格/旧的PHP代码,我只是尝试清理它,修复一些错误,等等。服务器也使用php 4。

问题如下:

我从数据库中获取了一些数据,我处理这些数据并显示它们。如果结果包含美元符号,PHP会尝试将其作为变量处理。

例如:

$result  = $this->sqlresult('SELECT * From Tablename  where id=15');
$details = $result['description'];
echo $details;

让我举例说明当$ result ['description']包含任何错误的文字时会发生什么,例如'这本书有148美元可用': 它通常不显示任何内容或显示错误的文本,例如本书可用于48。

我在细节上尝试了preg替换函数,我正在寻找char更改,或者html_special_chars,并尝试过那些,但没有发生任何事情,或者没有原始文本出现。

preg_replace('/\$ /','/&#36/;' $details);

我知道,传递变量的双引号会导致类似的错误。我也检查了this topic,但这不是我的解决方案。

目前的解决方案只是在$ sign的价格金额之间增加一个额外的空间,但我正在寻找一个更好的空间。

preg_replace('/\$/','/\$ /' $details);

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用转义字符?这本书是\ $ 148。