1

将 json 字符串(编码的 php 数组)放入 html 标签的最佳方法是什么?

<?php
$content = array(key1=>'value 1', key2=>'value 2');
?>
<span class="someclass" data="<?php echo(json_encode($content)); ?>">Stuff Here</span>

这是无效的,因为当它被编码时,它将包含破坏 html 的语音标记。

如果我使用 php 函数htmlentities就足够了,还是会有一些字符会破坏它?

谢谢。

4

2 回答 2

2

您可以使用 base64 编码,它可以很容易地被您希望使用的每种语言(如 javascript)解码:

<span class="someclass" data="<?php echo base64_encode (json_encode ($content)); ?>">Stuff Here</span>

它只使用 az、AZ 和 0-9。

于 2012-05-20T17:41:49.607 回答
1

不要将其放入数据属性中。生成像这样的javascript变量更容易

<script>
    var data = <?php echo json_encode() ?>
</script>
于 2012-05-20T17:43:24.103 回答