格式化json内容输出[重复]
Posted
技术标签:
【中文标题】格式化json内容输出[重复]【英文标题】:Formatting json contents output [duplicate] 【发布时间】:2016-04-24 05:37:35 【问题描述】:我正在开发一个ussd应用程序,我使用的api只接受以下格式的json响应
"ispin": 1,
"msisdn": "123456789",
"partnerid": 10,
"ShowInputBox": true,
"displaystring": "content to be displayed"
我已经成功地处理了向用户显示消息但无法添加一些格式的 php 代码。我想包括换行符和超链接。任何人都可以识别此代码中的任何错误
<?php
$SESSION_ID = $_GET['SESSION_ID'];
$MSISDN = $_GET['MSISDN'];
$PartnerId = $_GET['PartnerId'];
$MNOID = $_GET['MNOID'];
$USSD_STRING = $_GET['USSD_STRING'];
$displaystring = 'Welcome to Polio Buddy. Please select.\n <a href="register.php">1 : Register Family</a>\n <a href="check.php">2: Check Vaccination Status</a>\n <a href="vaccinate.php">3: Vaccinate Child</a>';
$arr = array('ispin' => 0, 'msisdn' => $MSISDN, 'partnerid' => $PartnerId, 'ShowInputBox' => 'true', 'displaystring' => $displaystring);
echo json_encode($arr);
?>
【问题讨论】:
@barmar 您如何将其标记为重复?再看问题!我正在尝试换行 json 响应花花公子的最后一个参数 这就是“漂亮的打印”的意思——以很好的格式显示它。 【参考方案1】:我假设您正在向用户显示“html”并且您希望显示的格式是 HTML,那么 \n 不会导致换行...使用“<br/>"
”。
然后你的单引号和双引号也不重要。
【讨论】:
我正在向用户显示 json 那你为什么要依赖<a href
标签呢?【参考方案2】:
尝试converting your new line characters to <br>
HTML elements,因为无论您使用什么来解析和显示 JSON,显然都不符合 \n
新行:
$displaystring = nl2br($displaystring);
【讨论】:
这不起作用。你试过运行我的整个脚本吗? @nick - 我明白了,您没有看到\n
s 在放入 JSON 后传播。调整后的答案。
@nick 请提供有关如何解析和显示 JSON 的更多详细信息。
@nick haha - 您是否尝试格式化 JSON 本身??
它只是打印出 ,就像使用 \n new lines 一样。它似乎不尊重 br 和 \n【参考方案3】:
$displaystring = "Welcome to Polio Buddy. Please select.\n <a href=\"register.php\">1 : Register Family</a>\n <a href=\"check.php\">2: Check Vaccination Status</a>\n <a href=\"vaccinate.php\">3: Vaccinate Child</a>";
PHP 可以解释带双引号的字符串,或者当你有单引号时保持原样。
我的自定义变量字符串
print '\n\t $variable"; // 将输出不变\n\t $variable
顺便说一句:只要有可能,最好使用单引号,因为如果要输出任何变量,PHP 不会浪费资源来解释。
【讨论】:
在没有解释的情况下向读者扔代码不是很有用。请确定核心问题,以及已采取哪些措施来解决它。 对于@iinspectable 没有评论,我深表歉意。以上是关于格式化json内容输出[重复]的主要内容,如果未能解决你的问题,请参考以下文章