以下是用PHP编写的代码示例,实现了将JSON文件和CSV文件进行对比,将CSV文件中的通道名称有但JSON文件中的channelName中没有的列出来,并将结果保存到txt文件中。

<?php

// 定义JSON文件和CSV文件的路径
$jsonFiles = ['file1.json', 'file2.json', 'file3.json', ...]; // 20个JSON文件
$csvFiles = ['file1.csv', 'file2.csv', 'file3.csv', ...]; // 5个CSV文件

// 创建一个数组,用于存储CSV文件中的通道名称
$csvChannels = [];

// 循环读取CSV文件,将通道名称存入数组
foreach ($csvFiles as $csvFile) {
    $file = fopen($csvFile, 'r');
    while (($row = fgetcsv($file)) !== false) {
        $channelName = $row[0]; // 假设通道名称在CSV文件的第一列
        $csvChannels[] = $channelName;
    }
    fclose($file);
}

// 创建一个数组,用于存储CSV文件中有但JSON文件中没有的通道名称
$missingChannels = [];

// 循环读取JSON文件,比较通道名称
foreach ($jsonFiles as $jsonFile) {
    $json = file_get_contents($jsonFile);
    $data = json_decode($json, true);
    foreach ($data as $item) {
        $channelName = $item['channelName'];
        if (!in_array($channelName, $csvChannels)) {
            $missingChannels[] = $channelName;
        }
    }
}

// 将结果保存到txt文件
$file = fopen('missing_channels.txt', 'w');
foreach ($missingChannels as $missingChannel) {
    fwrite($file, $missingChannel . PHP_EOL);
}
fclose($file);

echo "对比完成,结果已保存到missing_channels.txt文件。";
?>

请将代码中的file1.jsonfile2.json等替换为实际的JSON文件路径,以及file1.csvfile2.csv等替换为实际的CSV文件路径。执行代码后,将在当前目录下生成一个名为missing_channels.txt的文件,其中包含CSV文件中有但JSON文件中没有的通道名称

现在有20个json文件和5个cvs文件请用php帮我写一段代码把json文件和cvs文件做对比其中json文件中的channelName对应cvs文件中的通道名称把cvs文件中的通道名称有的而json文件中的channelName中没有的列出来做成txt文件

原文地址: http://www.cveoy.top/t/topic/hMzO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录