【问题标题】:Paragraph does not work (var_dump) [closed]段落不起作用(var_dump)[关闭]
【发布时间】:2017-07-30 21:19:43
【问题描述】:

这是我的第一篇文章,我是这个社区的新手。我目前正在学习 php,但遇到段落问题:

<?php
$name = "Erik Mustermann";
echo $name . "<br />";
echo strlen($name) . "<br />";
var_dump($name) . "<br />";
echo "Heyho" . "<br />";
var_dump($name) . "<br />";
?>

输出:

Erik Mustermann
15
string(15) "Erik Mustermann" Heyho
string(15) "Erik Mustermann"

为什么字符串“Heyho”和var_dump一样在同一行,即使我创建了一个段落?

【问题讨论】:

  • 因为,var_dump() 不是 HTML 解释器,它只是转储代码。 php.net/manual/en/function.var-dump.php 所以你得到了你要求 PHP 做的事情。
  • 是的,没错,但为什么我的字符串显示在同一行,即使我写了“
    ”?
  • 提示:看看你的 HTML 源代码。你会看到休息时间。
  • php.net/manual/en/function.var-dump.php --- "与任何将其结果直接输出到浏览器的东西一样,输出控制函数可用于捕获这个函数,并将其保存在一个字符串中(例如)。".
  • 因为您没有将&lt;br /&gt; 字符串写入您想要的输出位置。尝试 var_dump($name); echo "&lt;br /&gt;"; 而不是 var_dump($name) . "&lt;br /&gt;"; 并查看原始输出(即,如果您在 Web 浏览器中查看输出,请按 ctrl + u)以查看差异。

标签: php paragraph var-dump


【解决方案1】:

说实话,我很惊讶这段代码可以编译。

使用代码var_dump($name) . "&lt;br /&gt;";,第二部分. "&lt;br /&gt;"; 不会传递给var_dump,因此不会输出。你想要的是:

var_dump($name . "&lt;br /&gt;");

echo 不是一个函数,而是一种语言结构,这就是它不需要大括号的原因。

附带说明,&lt;br/&gt; 不会创建新段落,而是创建新行。

【讨论】:

  • 好吧,我越来越近了。使用这种方法,我的输出是:
    string(21) "Erik Mustermann"
猜你喜欢
  • 2013-05-03
  • 2021-05-07
  • 1970-01-01
  • 1970-01-01
  • 2015-11-13
  • 2012-01-13
  • 2014-12-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多