如何告诉PHP在到达行尾时停止而不返回错误?
我试图读取一个文本文件的内容,但不知道如何告诉PHP在它结束时中断 目前的代码是:如何告诉PHP在到达行尾时停止而不返回错误?,php,while-loop,text-files,Php,While Loop,Text Files,我试图读取一个文本文件的内容,但不知道如何告诉PHP在它结束时中断 目前的代码是: <?php $file = "campaign1_20_db.txt"; $content = file_get_contents($file); $string = explode("\n",$content); $index = 0; while ($index <= 100): $index = $index + 1; endwhile; ?> 如何将100替换为依赖于PHP到
<?php
$file = "campaign1_20_db.txt";
$content = file_get_contents($file);
$string = explode("\n",$content);
$index = 0;
while ($index <= 100):
$index = $index + 1;
endwhile;
?>
如何将100替换为依赖于PHP到达文本文件末尾的内容?因为您使用的是explode,所以会有一个行数组。但是,您可以简单地:
$strings = file($file);
在没有爆炸的情况下,它也能为你做同样的事情。然后,只需在该数组上执行foreach循环:
foreach($strings as $line) {
...
}
在每一条线上循环。但是,您似乎只是想计算有多少行,因此甚至不需要foreach:
$total_lines = count($strings);
因为您使用的是explode,所以将有一个行数组。但是,您可以简单地:
$strings = file($file);
在没有爆炸的情况下,它也能为你做同样的事情。然后,只需在该数组上执行foreach循环:
foreach($strings as $line) {
...
}
在每一条线上循环。但是,您似乎只是想计算有多少行,因此甚至不需要foreach:
$total_lines = count($strings);
我希望你有比一行一行数数更复杂的东西,否则我就不管这个答案了 在消耗内存算法方面,您可以使用打火机来迭代文件的行:
$f = fopen('campaign1_20_db.txt');
while ($line = fgets($f)) {
// your code
}
我希望你有比一行一行数数更复杂的东西,否则我就不管这个答案了 在消耗内存算法方面,您可以使用打火机来迭代文件的行:
$f = fopen('campaign1_20_db.txt');
while ($line = fgets($f)) {
// your code
}
如果您想查看是否已到达文件的末尾,则必须使用fopen、fread和feof的旧方法。代码应该是这样的
<?php
$file = fopen("file.txt");
while(!feof($file)) {
$content .= fread( $file, 1024 );
}
费奥夫
您正在查看的函数称为file end of。这基本上说明您是否已到达文件末尾
弗瑞德
在fread命令中,传递fopen返回的文件处理程序和必须读取的字节数。最大值取决于您的PHP设置。如果您想查看是否已到达文件的末尾,则必须使用fopen、fread和feof的旧方法。代码应该是这样的
<?php
$file = fopen("file.txt");
while(!feof($file)) {
$content .= fread( $file, 1024 );
}
费奥夫
您正在查看的函数称为file end of。这基本上说明您是否已到达文件末尾
弗瑞德
在fread命令中,传递fopen返回的文件处理程序和必须读取的字节数。最大值取决于您的PHP设置。为什么不直接循环$string数组?是否要停止执行?我不熟悉PHP语法。试着掌握如何使用它。马汉,是的。我想让PHP在这一点上停止循环。@TingPing从阅读PHP中使用的概念开始,这个问题显然非常神秘,因为您不熟悉PHP语言。为什么不直接循环$string数组?您的意思是停止执行吗?我不熟悉PHP语法。试着掌握如何使用它。马汉,是的。“我希望PHP在这一点上停止循环。@TingPing从阅读PHP中使用的概念开始,这个问题显然非常神秘,因为您不熟悉PHP语言。我不想计算行数。我有一个文本文件,其中包含我需要填充到html格式表中的数据。所以,我尝试使用while循环来获取文本文件中的所有内容,而不是计算行数。我有一个文本文件,其中包含我需要填充到html格式表中的数据。因此,我尝试使用while循环来获取文本文件中的所有内容。