Php 格式化json内容输出
我正在开发一个ussd应用程序,我使用的api只接受以下格式的json响应Php 格式化json内容输出,php,arrays,json,ussd,Php,Arrays,Json,Ussd,我正在开发一个ussd应用程序,我使用的api只接受以下格式的json响应 { "ispin": 1, "msisdn": "123456789", "partnerid": 10, "ShowInputBox": true, "displaystring": "content to be displayed" } 我已经成功地编写了php代码,该代码向用户显示消息,但无法添加一些格式化。我想包括换行符和超链接。有人能识别出这个代码中的错误吗 <?php $SE
{
"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);
?>
试试看,因为无论您使用什么方法来解析和显示JSON,显然都不尊重\n
新行:
$displaystring = nl2br($displaystring);
$displaystring=“欢迎加入好友。请选择。\n\n\n”;
PHP可以用双引号解释字符串,也可以在使用单引号时保持原样。
我的自定义变量字符串
打印“\n\t$variable”;//将输出不变的\n\t$variable
顺便说一句:只要有可能,最好使用单引号,因为PHP不会浪费资源来解释是否有任何变量要输出。我假设您正在向用户显示“HTML”,并且希望显示的格式是HTML格式,那么\n不会产生新行…使用“
”
然后你的单引号和双引号也不重要。我正在向用户显示json,那么你为什么依赖
这不起作用。你试过运行我的整个脚本吗?@nick-我明白了,你没有看到\n
在放入json后传播。调整后的答案。@nick请提供更多关于h的详细信息JSON是如何解析和显示的。@nick haha-你是想格式化JSON本身吗?它只是打印出
,就像打印新行一样。它似乎不尊重br和\n@barmar你怎么能把它标记为重复的呢?再看看这个问题!我试图把json响应的最后一个参数换行,这就是为什么““漂亮的打印”的意思是——显示格式很好。在没有解释的情况下向读者抛出代码不是很有用。请确定核心问题,以及已经采取了哪些措施来解决它。对于缺少注释@iinspectable,我深表歉意。
$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>";