让json_encode不能逃脱html实体

psy*_*tik 9 php iphone cocoa json objective-c

我将json_encoded数据从我的PHP服务器发送到iPhone应用程序.包含html实体的字符串会'&'被转义json_encode并作为&.

我期待做两件事之一:

  • 使json_encode无法逃避的HTML实体.Doc说'正常'模式不应该逃脱它,但它对我不起作用.有任何想法吗?

  • 使iPhone应用程序廉价地解除html实体.现在我能想到的唯一方法XML/HTML parser就是花一些非常昂贵的东西.任何更便宜的建议?

谢谢!

Art*_*cto 8

PHP 5.3和PHP 5.2都不会触及HTML实体.

您可以使用以下代码对此进行测试:

<?php
header("Content-type: text/plain"); //makes sure entities are not interpreted
$s = 'A string with &amp; &#x6F8 entities';
echo json_encode($s);
Run Code Online (Sandbox Code Playgroud)

你会看到PHP唯一能做的就是在字符串周围添加双引号.