Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示文件-PHP行内容前面的空白_Php_Html_Whitespace - Fatal编程技术网

显示文件-PHP行内容前面的空白

显示文件-PHP行内容前面的空白,php,html,whitespace,Php,Html,Whitespace,我目前正在使用foreach循环来显示文本文件的内容。但是,我还想显示行的实际内容之前的空白。如何做到这一点 $loop_var = 0; foreach($lines as $line) { $loop_var++; if ($loop_var == 1) { echo'<div id="h1">' . $line . '</div>'; } if ($loop_var

我目前正在使用foreach循环来显示文本文件的内容。但是,我还想显示行的实际内容之前的空白。如何做到这一点

$loop_var = 0;
    foreach($lines as $line) {  
        $loop_var++;
        if ($loop_var == 1) {
            echo'<div id="h1">' . $line . '</div>';
        }
        if ($loop_var == 2) {
            echo '<div id="h2">' . $line . '</div><br />';
        }
        if ($loop_var > 2) {
            if ($loop_var == 3) { echo '<pre><div id="code">'; }
            echo ($line) . "<br />";
        }
    }
    echo '</pre></div>';
它将显示为:

print '<pre>'.file_get_contents('filename.txt').'</pre>';
使用
标记,并将文本文件的内容打印到此文件中。 例如:

打印“”。文件获取内容('filename.txt');
逐行(带条件)

$file=fopen('filename','r');
打印“”;
$counter=0;
而($line=fgets($file)){
如果(/*条件出现在此处,即您要打印的行。示例:*/$counter>=2){
打印$行;
}
如果(/*条件出现在此处,您希望在此处结束打印。示例:*/$counter>=10)
$counter++;
}
打印“”;
fclose($文件);
使用
标记,并将文本文件的内容打印到此文件中。
$file = fopen('filename','r');

print '<pre>';
$counter = 0;
while( $line = fgets($file) ){
   if(  /*the condition comes here whitch line you want to print. example: */ $counter >= 2  ){
        print $line;
   }
   if(  /*the condition comes here where wants you end the printing. example: */ $counter >= 10 )
   $counter++;
}
print '</pre>';

fclose($file);
例如:

打印“”。文件获取内容('filename.txt');
逐行(带条件)

$file=fopen('filename','r');
打印“”;
$counter=0;
而($line=fgets($file)){
如果(/*条件出现在此处,即您要打印的行。示例:*/$counter>=2){
打印$行;
}
如果(/*条件出现在此处,您希望在此处结束打印。示例:*/$counter>=10)
$counter++;
}
打印“”;
fclose($文件);

当您从文件中读取文本并再次输出该文本时,空白仍然存在

但是:如果您正在输出HTML,并且在浏览器中查看输出,则忽略空白。这只是浏览器显示html的正常方式

使用浏览器查看HTML源代码(例如firefox中的CTRL-U)以检查是否存在这种情况

如果希望在网页中显示空白,可以使用pre标记,或使用CSS属性“whitespace”



请参见此处的演示:

当您从文件中读取文本并再次输出该文本时,空白仍然存在

但是:如果您正在输出HTML,并且在浏览器中查看输出,则忽略空白。这只是浏览器显示html的正常方式

使用浏览器查看HTML源代码(例如firefox中的CTRL-U)以检查是否存在这种情况

如果希望在网页中显示空白,可以使用pre标记,或使用CSS属性“whitespace”



请看这里的演示:

好吧,如果您愿意,您可以使用蛮力。。。除非你真的被卡住了

1) 使用strlen()获取字符串的长度

2) 在字符串中的字符上运行一个循环,并检查是否有空格strpos

3) 将html空间连接为空字符串,并在打印前打印

$str=“这里有什么……”;
$spaces=“”;

对于($i=0;$i好吧,如果你愿意,你可以用蛮力来强迫它……除非你真的被卡住了

1) 使用strlen()获取字符串的长度

2) 在字符串中的字符上运行一个循环,并检查是否有空格strpos

3) 将html空间连接为空字符串,并在打印前打印

$str=“这里有什么……”;
$spaces=“”;


对于($i=0;$i实际上这对我的情况没有帮助,因为我不想一次显示整个文件,因为前两行包含一些不同的信息。这只是一个例子。我想你还有代码的其他部分。我用一行一行的解决方案编辑答案Kay nevermind,我得到了要点。但我没有显示前面的内容字符它在行之前添加了一个换行符。好吧,它可以工作。我忘记删除了我为处理此问题而添加的一段代码。但是,换行符问题仍然存在。如果您使用
或您可以使用
nl2br($line),则不需要

如果您想使用

,这会将行尾转换为

标记。但是代码中额外的
会导致额外的换行。在
标记中,换行符在html中也显示为真正的换行符。实际上,这对我的情况没有帮助,因为我不想一次显示整个文件wo行包含一些不同的信息。这只是一个例子。我认为你有代码的其他部分。我用一行一行的解决方案编辑答案。Kay nevermind,我得到了要点。但是它没有显示前面的字符,而是在行之前添加了一个换行符。好吧,它起作用了。我忘了删除我为处理而添加的一段代码但是,换行符问题仍然存在。如果使用
或可以使用
nl2br($line),则不需要使用

如果你想使用

,这会将行尾转换为

标记。但是代码中多余的
会导致额外的换行。在
标记中,换行符在html中也显示为真正的换行符。我已经将你的问题重新标记为html,假设这就是你所说的。尝试使用描述无论您的问题涉及的是哪种语言和/或技术;Stack Overflow是一个涵盖所有编程语言的论坛。很抱歉我的无知。我认为这更多的是一个PHP问题,而不是HTML问题。为什么PHP应该删除空白而不是,例如,字母
c
?;-)还有一件事:最后您切换了关闭的标记:
echo'
,如果您希望使用更少的标记,您不需要在
pre
标记中使用
,只需添加
id=“code”
to
pre
我怎么没有想到这一点..再次感谢。我已经将您的问题标记为HTML,假设这就是您所说的。尝试使用描述您的问题所涉及的语言和/或技术的标记;Stack Overflow是一个涵盖所有编程语言的论坛。对不起,我的ig
print '<pre>'.file_get_contents('filename.txt').'</pre>';
$file = fopen('filename','r');

print '<pre>';
$counter = 0;
while( $line = fgets($file) ){
   if(  /*the condition comes here whitch line you want to print. example: */ $counter >= 2  ){
        print $line;
   }
   if(  /*the condition comes here where wants you end the printing. example: */ $counter >= 10 )
   $counter++;
}
print '</pre>';

fclose($file);
  <pre><?php echo $file_content ?></pre>
  <p style="whitespace:pre;"><?php echo $file_content ?></p>
$str = " whatever is in here ... ";
$spaces = "";
for( $i=0; $i<strlen($str); $i++ ){
    if( strpos( $str, ' ', $i ) ){
        $spaces .= "&nbsp;";
    }
}