Php 解析CSV以比较3列中的字符串?

Php 解析CSV以比较3列中的字符串?,php,csv,Php,Csv,我想知道在PHP中是否可以将CSV文件的三列内容放入单独的数组中,这样我就可以比较第一列和第三列之间的值,并根据条件将匹配项放入中间的列中 数据如下所示: 因此,我希望将SKU列放入一个数组,将图像放入另一个数组,然后比较字符串以查找匹配项。如果找到匹配项,请将其放置在第2列中相应SKU的旁边。我理解fgetcsv()只是一行一行地进行。VBA是否应该用于此类功能?到目前为止,我已经: <?php function imageMatch() { $row = 1; if

我想知道在PHP中是否可以将CSV文件的三列内容放入单独的数组中,这样我就可以比较第一列和第三列之间的值,并根据条件将匹配项放入中间的列中

数据如下所示:

因此,我希望将SKU列放入一个数组,将图像放入另一个数组,然后比较字符串以查找匹配项。如果找到匹配项,请将其放置在第2列中相应SKU的旁边。我理解
fgetcsv()
只是一行一行地进行。VBA是否应该用于此类功能?到目前为止,我已经:

<?php

function imageMatch() {
    $row = 1;
    if (($handle = fopen("sg.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        $columnsToProcess = [0, 1, 2];
        for ($c=0; $c < $num; $c++) {
            if(in_array($c, $columnsToProcess)) {
                echo $data[$c] . "<br />\n";
            }
        }
        print_r($data);
    }
    fclose($handle);
    }
}

imageMatch();

<代码>您可以使用两个文件(Orthal.CSV和TEMP.CSV),所以当您逐行读取原始文件时,您正在创建第二个文件,中间列中有所需的数据。完成后,用新文件覆盖原始文件。