htmlタグと属性を持つ文字列を含む複数の文字列値がある大きな多次元配列があります。PHP | json_encodeがhtmlタグを削除しました
ですが、json_encode
を使用した場合、出力にはいくつかのタグが削除されています。
これは、実際にjsonのエンコードで問題があるかどうかを確認するために別のファイルを試した例です。
<?php
$var = array(
"type" => "<p style=\"text-align: center;\">sfds</p>"
);
$encoded = json_encode($var);
echo '<pre>';
print_r($encoded);
このような状況を処理する方法は?
これは私が得た結果です。
{"type":"
sfds<\/p>"}
これは私の多次元配列から得られた結果です。
{"data":[{"type":"columns","data":{"columns":[{"width":6,"blocks":[]},{"width":6,"blocks":[]}],"preset":"columns-6-6"}},{"type":"columns","data":{"columns":[{"width":6,"blocks":[{"type":"heading","data":{"text":"
I am the Heading<\/p>","mce_0":"
I am the Heading<\/p>"}},{"type":"heading","data":{"text":"
sfds<\/p>","mce_1":"
sfds<\/p>"}}]},{"width":6,"blocks":[{"type":"text","data":{"text":"
\n
Im Text<\/div>\n<\/div>","mce_2":"
\n
Im Text<\/div>\n<\/div>"}}]}],"preset":"columns-6-6"}},{"type":"text","data":{"text":"
\n
Im just a text<\/div>\n<\/div>","mce_3":"
\n
Im just a text<\/div>\n<\/div>"}}]}
= - = - = - = - = - = -
アップデート:私はエンコードしようとしている配列変数ののvar_dumpの生成されたHTMLソースコード。
<pre> after set2_decode:<br>array(1) {
["data"]=>
array(3) {
[0]=>
array(2) {
["type"]=>
string(7) "columns"
["data"]=>
array(2) {
["columns"]=>
array(2) {
[0]=>
array(2) {
["width"]=>
int(6)
["blocks"]=>
array(0) {
}
}
[1]=>
array(2) {
["width"]=>
int(6)
["blocks"]=>
array(0) {
}
}
}
["preset"]=>
string(11) "columns-6-6"
}
}
[1]=>
array(2) {
["type"]=>
string(7) "columns"
["data"]=>
array(2) {
["columns"]=>
array(2) {
[0]=>
array(2) {
["width"]=>
int(6)
["blocks"]=>
array(2) {
[0]=>
array(2) {
["type"]=>
string(7) "heading"
["data"]=>
array(2) {
["text"]=>
string(23) "<p>I am the Heading</p>"
["mce_0"]=>
string(23) "<p>I am the Heading</p>"
}
}
[1]=>
array(2) {
["type"]=>
string(7) "heading"
["data"]=>
array(2) {
["text"]=>
string(39) "<p style="text-align: center;">sfds</p>"
["mce_1"]=>
string(39) "<p style="text-align: center;">sfds</p>"
}
}
}
}
[1]=>
array(2) {
["width"]=>
int(6)
["blocks"]=>
array(1) {
[0]=>
array(2) {
["type"]=>
string(4) "text"
["data"]=>
array(2) {
["text"]=>
string(59) "<div>
<div style="text-align: center;">Im Text</div>
</div>"
["mce_2"]=>
string(59) "<div>
<div style="text-align: center;">Im Text</div>
</div>"
}
}
}
}
}
["preset"]=>
string(11) "columns-6-6"
}
}
[2]=>
array(2) {
["type"]=>
string(4) "text"
["data"]=>
array(2) {
["text"]=>
string(65) "<div>
<div style="text-align: right;">Im just a text</div>
</div>"
["mce_3"]=>
string(65) "<div>
<div style="text-align: right;">Im just a text</div>
</div>"
}
}
}
}
</pre>
ブラウザで見る代わりに、生成されたHTMLを開きます。または、コンソールでスクリプトを実行します。 –
@u_mulder あなたの意見は分かりませんでした。エンコードされたjsonのdosentがうまく動作したら、ブラウザでデータを見るのはどういうものですか?私はjsonが必要ですが、そのjsonはhtmlタグにも属性を含める必要があります。 と私はブラウザで試した配列はうまく動作し、HTMLタグはブラウザで表示されたときに実装されるように直接見ることができません。 –
https://3v4l.org/XWI43 –