当前位置: 首页 > 面试题库 >

在JSON编码的HTML5数据属性中转义/编码单引号

卢景澄
2023-03-14
问题内容

在PHP中,我用于json_encode()在HTML5数据属性中回显数组。根据JSON的要求-并json_encode()生成-
用双引号引起来的值。为此,我将数据属性用单引号引起来,例如:

<article data-tags='["html5","jquery","php","test's"]'>

如您所见,最后一个标记(测试的)包含一个单引号,并且json_encode()不带任何选项的使用会导致解析问题。

因此,我使用json_encode()JSON_HEX_APOS参数,并且解析很好,因为我的单引号已编码,但我想知道:这样做有不利之处吗?


问题答案:

您需要将HTML转义数据回显到HTML:

printf('<article data-tags="%s">',
    htmlspecialchars(json_encode(array('html5', ...)), ENT_QUOTES, 'UTF-8'));


 类似资料:
  • 问题内容: 我正在使用教义2和zend框架1.11。在《准则2》中不鼓励使用公共属性,因此我将实体属性设为私有。但是,我刚刚了解到Zend_Json :: encode()和json_encode()不会看到私有/受保护的属性,因此不会在其输出中添加它们。 因此,当我同时使用var_dump和var_dump时,会得到一个空集,例如string(4)“ [{}]”。 事实证明,我必须编写自己的函数

  • 我们有一个由两种不同的编码数据(utf8和latin1)组成的表,这两种编码数据是从两个不同的应用程序用例中插入的。如果我们以一种编码获得数据,我们会遇到其他语言文本的字符串问题。我们需要将总的表数据转换为单一编码。 例如:表X编码的id名称数据 如果我们使用“latin1”连接字符集,我们会遇到“ébarber”(断字符串)的问题。如果我们使用“utf8”连接字符集,我们就会遇到“a gogo”

  • 问题内容: 我试图在Python中将数据编码为JSON,但遇到了很多麻烦。我认为问题仅仅是误解。 我对Python相对较新,并且从未真正熟悉各种Python数据类型,所以这很可能使我感到困惑。 目前,我正在声明一个列表,遍历另一个列表,并将一个列表附加到另一个列表中: 所以我要么: 我不懂JSON语法 我不了解Pythons JSON模块 我使用了不合适的数据类型。 问题答案: Python转换为

  • 在上一章,已经讲过在 codec 中使用 JSON 编码。但是,有些日志可能是一种复合的数据结构,其中只是一部分记录是 JSON 格式的。这时候,我们依然需要在 filter 阶段,单独启用 JSON 解码插件。 配置示例 filter { json { source => "message" target => "jsoncontent" } }

  • 问题内容: 在通过网络发送数据包之前压缩数据包的最佳压缩算法是什么?数据包使用JSON编码。LZW会是一个不错的选择吗?还是有更好的选择? 问题答案: 我认为有两个问题会影响您的答案: 1)在不知道程序的任何特定运行情况下会如何预测数据的组成?例如,如果您的数据包如下所示: -那么您可能会通过创建一个不断出现在数据中的文本字符串的硬编码字典来获得最佳压缩,并用适当的字典索引替换每个出现的文本字符串

  • 问题内容: 我正在编写脚本以自动生成演示数据,并且需要在JSON中序列化一些数据。该数据的一部分是图像,因此我在base64中对其进行了编码,但是当我尝试运行脚本时,我得到了: 据我所知,无论使用base64编码的任何内容(在这种情况下,都是PNG图像)都只是一个字符串,因此它应该对序列化造成问题。我想念什么? 问题答案: 您必须注意数据类型。 如果读取二进制图像,则会得到字节。如果将这些字节编码