【问题标题】:Cant get \n to work in php无法在 php 中使用 \n
【发布时间】:2013-12-24 12:12:43
【问题描述】:

我正在尝试回显一个字符串,该字符串中包含“\n”和“\r”,但是当它执行时仍然显示“\n”和“\r”。

这就是我正在做的事情。

$url = 'http://whoiz.herokuapp.com/lookup.json?url=madithouse.com';
$response = file_get_contents($url);
echo $response;

它按原样回显所有内容,我想要的只是在它有“\n”的任何地方都换行。

【问题讨论】:

  • 你是在控制台还是浏览器上。如果浏览器 (html) 将 \n 替换为
  • 回声 nl2br($response);
  • @Ignacio 奇怪的是,url 返回的内容不是 JSON。
  • @IgnacioVazquez-Abrams 当我解码 JSON 时,它只删除“\n”和“\r”我想要的是当有“\n”时它移动到新行
  • Ignacio:我只是得到一个简单的字符串。 json_decode() 对此无能为力。这也表明 is is not stackoverflow.com/questions/7487869/… 所以我很困惑。

标签: php


【解决方案1】:

如果您要输出到浏览器,您将看不到新行(除非您查看源代码)。你必须使用nl2br()

【讨论】:

    【解决方案2】:
    echo nl2br(json_decode($response));
    

    【讨论】:

      【解决方案3】:

      在这种情况下nl2br() 不起作用。如果您想在新行中输出代替“\n”,只需将其替换为<br>

      像这样

      $url = 'http://whoiz.herokuapp.com/lookup.json?url=madithouse.com';
      
      $response = file_get_contents($url);
      
      echo str_replace("\\n", "<br>", $response);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多