Php 将列数据逐个放入文本文件?

Php 将列数据逐个放入文本文件?,php,Php,csv数据如下所示: (first line) price url (second line) $10 src="http://www.test.com/1455/"||src="http://www.test.com/image/1456/"|| (third line) $20 src="http://www.test.com/2260/"||src="http://www.test.com/2261/"|| .... ......

csv数据如下所示:

  (first line)   price   url

  (second line)    $10   src="http://www.test.com/1455/"||src="http://www.test.com/image/1456/"||

  (third line)    $20  src="http://www.test.com/2260/"||src="http://www.test.com/2261/"||

      ....   ........
现在我想把url列中的所有数据放入一个文本文件中。并逐一显示数据。即:

http://www.test.com/1455/
http://www.test.com/image/1456/
http://www.test.com/2260/
http://www.test.com/2261/
....
现在,我累坏了

a、 我不知道如何防止输出第一行。 b、 我不知道如何获取url,并将它们逐个放入文本文件中

首先,我使用以下代码将数据输出到屏幕

$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);

        $row++;

       echo $data[1] . "<br />\n";

    }
    fclose($handle);
}
$row=1;
if($handle=fopen(“test.csv”、“r”)!==FALSE){
while(($data=fgetcsv($handle,1000,“,”)!==FALSE){
$num=计数($data);
$row++;
echo$data[1]。“
\n”; } fclose($handle); }
上面的代码还输出第一行(url)。我不想输出它。我该怎么办。
谢谢。

你们很接近了!我只是稍微修改了你的代码,来完成你想做的事情。基本上,您需要第二个文件处理程序来处理输出。您可以将其作为附加模式打开,以便在文件末尾写入附加。至于不回显标题,只需确保该行大于第一行即可。希望有帮助

    $row = 1;
    if (($handle = fopen("test.csv", "r")) !== FALSE && ($handle2 = fopen("output.txt", 'a')) !== FALSE) {
        while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
            if($row > 1) {
                fwrite($handle2, "{$data[1]}\n");
            }
            $row++;
        }
        fclose($handle);
        fclose($handle2);
    }

//跳过CSV的第一行-输出第二列数据

$row=0;
if($handle=fopen(“test.csv”、“r”)!==FALSE){
while(($data=fgetcsv($handle,1000,“,”)!==FALSE){
$num=计数($data);
如果($row>0){
echo$data[1]。“
\n”; } $row++; } fclose($handle); }
如果不想回显输出,请删除回显语句。我想回显内容而不是标题。谢谢我想你说的是你想跳过输出的第一行,对吗?谢谢,我把你的代码放进去运行了。显示注意:未定义的偏移量:1,所有内容都在output.txt中,但不是一行接一行。我只需要这一部分。必须在content src=“test.com/1455/”| | src=“……我不知道怎么做。谢谢,我不知道你的意思。也许有时候$data的第一个索引中没有值,所以你可以进行isset($data[1])在写出来之前确保它在那里。我明白你对url的意思。试着使用一些正则表达式从$data[1]的值中提取出来。试试看,如果你有问题,请告诉我们!如果正则表达式不适合你,你也可以试着使用PHP的explode()函数来分解它。
$row = 0;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        if ($row > 0 ) {
          echo $data[1] . "<br />\n";
        }
        $row++;
    }
    fclose($handle);
}