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 に答える