【问题标题】:Problems with new line in embedded PHP嵌入式 PHP 中的换行问题
【发布时间】:2014-06-19 19:40:16
【问题描述】:

我已经在我的网站中嵌入了这个 html。如您所见,如果一个文本文件不存在,它会创建一个文本文件,或者它会读取现有文件。它增加它读取的内容,然后将其重写到文本文件中。我可以理解这段代码可能很草率,所以除了解决我的主要问题之外,我想知道是否有任何方法可以改进代码。

我的主要问题是让 echo 输出文本更低。我尝试过使用“\n”和
(无空格)的许多变体,但读取变量只是没有移动。有什么帮助或建议吗?

<!DOCTYPE html>
<html>
<body>
<link href="css/stylesheet.css" type="text/css" rel="stylesheet">
<p style="font-size: 100px; color: blue ; text-align:center ;">
<?php
$filename = "number.txt" ;
if (!file_exists($filename)) {
$f = fopen($filename, "x");
fwrite($f,"0000000000") ;
fclose($f) ;
}
$f = fopen($filename, "r");
$i = fgets($f); 
fclose($f);
$f = fopen($filename, "w");
$i = $i+1 ;
echo "<br>$i" ;
fwrite($f, "$i"); 
fclose($f);
?>
</p>
</body>
</html>

【问题讨论】:

  • 文字向下我不明白。您能否举例说明输出的外观和您的期望。
  • 正如所写,代码看起来只是要向浏览器输出一个整数,标记看起来像这样&lt;p style="..."&gt;&lt;br&gt;42&lt;/p&gt; 那应该在数字前留一个空行 - 这就是你想要的?

标签: php html newline


【解决方案1】:
<!DOCTYPE html>
<html>
<body>
<link href="css/stylesheet.css" type="text/css" rel="stylesheet">
<p style="font-size: 100px; color: blue ; text-align:center ;">
<?php
$filename = "number.txt" ;
if (!file_exists($filename)) {
$f = fopen($filename, "x");
fwrite($f,"0000000000") ;
fclose($f) ;
}
$f = fopen($filename, "r");
$i = fgets($f); 
fclose($f);
$f = fopen($filename, "w");
$i = $i+1 ;
echo "$i" ;
echo "\r\n"; 
fwrite($f, "$i"); 
fclose($f);
?>
</p>
</body>
</html>

见:Writing a new line to file in PHP

【讨论】:

  • echo $i" 上缺少"
【解决方案2】:

单行化:

file_put_contents($filename, file_get_contents($filename) + 1);

如果您可以使用“0”为文件播种,您将不会在第一次点击时收到警告。或者,你可以做 这个:

file_put_contents($filename, @file_get_contents($filename) + 1);

【讨论】:

  • 非常感谢,这让事情变得更有效率。
猜你喜欢
  • 1970-01-01
  • 2014-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多