在雅虎的PHP中,Typographer的引用

时间:2010-09-18 03:43:47

标签: php quotes str-replace

我的客户是一份小报纸,用印刷师的报价而非“直接”报价提供故事。这些故事由PHP组装成HTML。在我的Apache服务器上,它们显示正常,但在我的客户网站所在的Yahoo上,它们都被问号所取代。

为了解决这个问题,我在PHP中编写了以下函数:

function fixquotes($text)
{
    $text = str_replace('’','’',$text);
    $text = str_replace('”','”',$text);
    $text = str_replace('“','“',$text);
    return $text;
};

在上面的函数中,我正在搜索typographer的引号以用HTML等价替换它们。在我的本地Apache服务器上,它运行良好。在Yahoo上,所有拼写错误引用都会转换为列出的第一个(上图:')。

在我的服务器上,魔术引用已关闭,但雅虎已将其打开。我不确定这是否是我的问题的原因,但它是可能的。

我非常清楚PHP中的单引号和双引号字符串之间的区别,并且甚至尝试了上述两种方式并没有区别,所以让我们不要重新开始。

有没有人有建议的方向让我调查?

1 个答案:

答案 0 :(得分:1)

如果这些东西存储在数据库中,这可能是雅虎网络服务器或数据库中的字符集问题。

拉出firebug(或类似的),然后查看开发框和实时网站上的HTTP标头。您可能希望使用php的header()函数强制标题。