Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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_Url_Loops_Foreach - Fatal编程技术网

Php 在文本文件的每一行中运行代码

Php 在文本文件的每一行中运行代码,php,url,loops,foreach,Php,Url,Loops,Foreach,我有一个包含一些URL的文本文件,如: 我需要打开该文件并为此文件中的每一行运行代码,换句话说,为列出的每个URL运行代码。到目前为止,当我在一个数组中有一个URL时,代码可以正常工作。。但是,如果我可以使用这个包含URL的文件来完成这项工作,那会快得多 我试着说: $file1 = "/file.txt"; $lines = file($file1); foreach($lines as $line_num => $v) { // my co

我有一个包含一些URL的文本文件,如:





我需要打开该文件并为此文件中的每一行运行代码,换句话说,为列出的每个URL运行代码。到目前为止,当我在一个数组中有一个URL时,代码可以正常工作。。但是,如果我可以使用这个包含URL的文件来完成这项工作,那会快得多

我试着说:

    $file1 = "/file.txt";
    $lines = file($file1);
    foreach($lines as $line_num => $v)
   {
    // my code
}

并使用$v数组运行代码。。但这不起作用,因为所有的行都在$v数组中。。那么,如何为文件中的每个URL运行代码?

看起来您的行尾没有读入PHP,您可以创建自己的拆分函数,如中所示:

你也可以这样做:

$fd = fopen ($file1, "r"); 
while (!feof ($fd))  { 
   $line = fgets($fd, 4096); 
   //Do something with $line
} 
fclose ($fd); 

file()
返回文件中每行的数组。听起来你的文件只有一行。所以你有一些不可靠的行尾字符(例如,
\n
,而php需要
\r\n
,因此从未检测到“新”行)…你怎么知道文件都在
$v
内?请添加
var\u dump($v)
并将结果添加到您的问题中。
$fd = fopen ($file1, "r"); 
while (!feof ($fd))  { 
   $line = fgets($fd, 4096); 
   //Do something with $line
} 
fclose ($fd);