【问题标题】:Formatting json contents output [duplicate]格式化json内容输出[重复]
【发布时间】: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 响应花花公子的最后一个参数
  • 这就是“漂亮的打印”的意思——以很好的格式显示它。

标签: php arrays json ussd


【解决方案1】:

我假设您正在向用户显示“HTML”并且您希望显示的格式是 HTML,那么 \n 不会导致换行...使用“&lt;br/&gt;"”。

然后你的单引号和双引号也不重要。

【讨论】:

  • 我正在向用户显示 json
  • 那你为什么要依赖&lt;a href标签呢?
【解决方案2】:

尝试converting your new line characters to &lt;br&gt; HTML elements,因为无论您使用什么来解析和显示 JSON,显然都不符合 \n 新行:

$displaystring = nl2br($displaystring);

【讨论】:

  • 这不起作用。你试过运行我的整个脚本吗?
  • @nick - 我明白了,您没有看到 \ns 在放入 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 没有评论,我深表歉意。
猜你喜欢
  • 2014-12-12
  • 1970-01-01
  • 2012-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-29
  • 2018-04-13
相关资源
最近更新 更多