2011-04-06 61 views
1

是有办法取代:移除左,右双引号

左双引号“ 右双引号” 左单引号“ 右单引号”

字符在数据库中保存为“...”(我的数据库使用utf-8 unicode字符集)

但是当我从数据库中获取数据时,它将返回一个奇怪的字符“”和“ (im使用Zend Framework,并利用获取的Zend db表的方法来检索数据)

如何从字符串中删除这些字符?

回答

0

如果是UTF-8的问题,不要试图用str_replace函数操纵结果字符串来解决这个问题或调整,这将是消除症状,而原因仍然存在,并有可能创造更多的问题。

如果是UTF-8的问题是要知道重要的是,不只是数据库归类事项,但例如也可以连接。

对于Zend框架,你可以使用这个:

//set connection to utf8 
$db->query('SET NAMES "utf8"')->execute(); 

这是最容易在你的bootstrap.php中,您可以设置您的数据库连接运行此。

0

尝试在控制器的地方叫MySQL查询。

mysql_query('SET NAMES utf8'); 

我不知道这将有助于虽然。也许他们会根据需要出现。

1

这不是你的问题,你关于unicode的问题, 而是替换 TRIM函数可以帮到你!

UPDATE my_table SET my_column = TRIM (BOTH '"' FROM my_colum); 
UPDATE my_table SET my_column = TRIM (BOTH '\'' FROM my_colum); 
+1

不能很好地解决,如果问题在于UTF-8。 – markus 2011-04-06 11:22:34

+0

噢,对不起,我只(读第一pharagraph:,我会编辑的答案感谢 – 2011-04-06 11:23:24