在 PHP 中将字符串正确转义为 JSON 数据

发布于 2024-11-17 03:21:19 字数 272 浏览 0 评论 0原文

我有一些相当长的字符串,其中包含我想要从 PHP 转换为 JSON 的任何内容。有没有一种简单的方法可以做到这一点?例如,我希望这个 JSON 输出能够工作:

<?php
   $var = "hel\"lo";
   $var2 = "hel\nlo";
   echo "[\"".$var."\", \"".$var2."\"]"; // should give me the data: hel"lo and hel<new line>lo
?>

I have some rather long string containing just about anything that I want to convert to JSON from PHP. Is there a simple way to do this? For example I would like this JSON ouput to work:

<?php
   $var = "hel\"lo";
   $var2 = "hel\nlo";
   echo "[\"".$var."\", \"".$var2."\"]"; // should give me the data: hel"lo and hel<new line>lo
?>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

一梦等七年七年为一梦 2024-11-24 03:21:19

构造一个 PHP 数据结构,然后通过 json_encode 运行它。不要尝试通过将字符串混合在一起来构建 JSON。

$foo = array($var, $var2);
echo json_encode($foo);

Construct a PHP data structure and then run it through json_encode. Don't try to build JSON by mashing together strings.

$foo = array($var, $var2);
echo json_encode($foo);
决绝 2024-11-24 03:21:19
$var = "hel\"lo";
$var2 = "hel\nlo";
echo json_encode(array($var, $var2));
$var = "hel\"lo";
$var2 = "hel\nlo";
echo json_encode(array($var, $var2));
盗心人 2024-11-24 03:21:19

您可以使用 json_encode (编辑 - 我更改了数组,以便在编码时输出是所请求的)

var $json = array('hello','hello');

echo (json_encode($json));

看起来 此处供参考。

编辑 - 要使用 json_encode 你必须有 php vesion > 5.20 。如果您需要替代方案,您可以使用 zend_framework 组件 Zend_JSON

You could use json_encode (EDIT - i changed the array so that when encoded the output is what was requested)

var $json = array('hello','hello');

echo (json_encode($json));

look here for reference.

EDIT - to use json_encode you must have php vesion > 5.20 . if you need an alternative you can use the zend_framework component Zend_JSON

万人眼中万个我 2024-11-24 03:21:19

json_encode 和 json_decode 应该可以解决问题。

http://php.net/manual/en/function.json-encode.php

json_encode and json_decode should do the trick.

http://php.net/manual/en/function.json-encode.php

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文