首頁 >php教程 >php手册 >php jsonp单引号转义,jsonp引号转义

php jsonp单引号转义,jsonp引号转义

WBOY
WBOY原創
2016-06-13 09:20:301036瀏覽

php jsonp单引号转义,jsonp引号转义

php中jsonp输出时一般用下面的格式:

callbackname('json string');

如果中间的json string中含有单引号,这个输出就是有问题的,调用方一般是无法处理的,所以我们要对单引号进行转义。

如果是用json_encode方式生成可以用下面的方式转义:

<span>$ret</span> = json_encode(<span>$result</span>,<span> JSON_HEX_APOS);
</span><span>header</span>('Content-Type: text/javascript; charset=utf-8'<span>);
</span><span>echo</span> <span>$callback</span> . '(\'' . <span>$ret</span> . '\');';

这里 JSON_HEX_APOS 是php是提供的把单引号换为 \u0027 了。

如果是字符串拼接的,可以用下面的方式:

<span>$jsonData</span> = <span>preg_replace</span>('/\'/', '\u0027', <span>$jsonData</span>);

然后再输出。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn