文本、php、json中要替换的特殊字符数组

文本、php、json中要替换的特殊字符数组,php,arrays,json,Php,Arrays,Json,我有一个巨大的文本,我不断得到一个json格式。当我在json中接收到它们时,对于一些特殊字符,如“'”和copy,我接收它们的方式不同。我使用php和json将json转换为html。例如,我接收 'as\c101d(单引号) “as\c201d(期初报价) “as\c202d(结束报价) 我计划将所有“,”保留在一个数组中,并使用该数组替换“to”或类似文本中的\c101d值,以便更容易在一个命令中检查整个文本,正确替换所有特殊字符并在我的网页上正确显示它们 可能是$arr=array(“\

我有一个巨大的文本,我不断得到一个json格式。当我在json中接收到它们时,对于一些特殊字符,如“'”和copy,我接收它们的方式不同。我使用php和json将json转换为html。例如,我接收

'as\c101d(单引号) “as\c201d(期初报价) “as\c202d(结束报价)

我计划将所有“,”保留在一个数组中,并使用该数组替换“to”或类似文本中的\c101d值,以便更容易在一个命令中检查整个文本,正确替换所有特殊字符并在我的网页上正确显示它们

可能是$arr=array(“\c101d”=>”、“\c02d”=>”),然后在$text变量上调用此数组以检查与数组中的字符类似的字符,并执行字符串替换。
我有这个想法,但在编码方面我该如何实现这一点?感谢您的帮助。

您是否使用带有不同选项标志的
json\u encode()


对于子字符串替换,您应该使用

?您是否使用带有不同选项标志的
json\u encode()

对于子字符串替换,您应该使用

,应该做您想做的事情

此函数返回一个字符串或数组,其中subject中所有出现的搜索都替换为给定的替换值

str_replace
函数将数组作为搜索和替换的可能参数,因此您可以执行以下操作:

$search = array( '\'' , '"', ...);
$replace = array( '\c101d', '\c201d', ...);
$text = str_replace($search, $replace, $text);
你应该做你想做的

此函数返回一个字符串或数组,其中subject中所有出现的搜索都替换为给定的替换值

str_replace
函数将数组作为搜索和替换的可能参数,因此您可以执行以下操作:

$search = array( '\'' , '"', ...);
$replace = array( '\c101d', '\c201d', ...);
$text = str_replace($search, $replace, $text);

已解决

这段代码解决了所有问题,包括“,”和所有其他奇怪的字符

$newtext=mb_convert_encoding($text,  'HTML-ENTITIES','UTF-8');

已解决

这段代码解决了所有问题,包括“,”和所有其他奇怪的字符

$newtext=mb_convert_encoding($text,  'HTML-ENTITIES','UTF-8');

你打算对文本做什么?我打算在html页面中显示它,但由于字符是\c101d,它在html页面上显示得很奇怪。也许《纽约时报》提要有一个类似UTF-8的编码,而你的网站将它显示为ISO 8859-1,你打算对文本做什么?我打算在html页面中显示它,但由于字符是\c101d它奇怪地出现在html页面上。也许《纽约时报》的订阅源有一个类似UTF-8的编码,而你的网站显示为ISO 8859-1UMM……我尝试了你给出的内容,但似乎没有改变任何东西。这就是发生的情况……当我看到我得到的json时,我可以看到特殊字符是\u201c,但在h上tml页面显示为“œ”,我无法替换它们!仅供参考,我正在返回JSON格式的《纽约时报》最新新闻API。显然,我交换了$search和$replace,因为您的代码正在执行我尝试执行的代码。嗯……我尝试了您提供的代码,但它似乎没有改变任何内容。这就是正在发生的事情…当我查看返回的json时,我可以看到特殊字符是\u201c,但在html页面上它显示为–œ,我无法替换它们!仅供参考,我返回的是json格式的《纽约时报》最新新闻API。显然,我交换了$search和$replace,因为您的代码正在执行我正在尝试的代码去做。