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
Php 需要将.TLD文件转换为CSV_Php_Csv_Strcmp_Spring Tld - Fatal编程技术网

Php 需要将.TLD文件转换为CSV

Php 需要将.TLD文件转换为CSV,php,csv,strcmp,spring-tld,Php,Csv,Strcmp,Spring Tld,已向我提供了一个.TLD文件。它包含我的产品的类别数据(以千为单位)。问题是我需要将其转换为CSV,但我在网上找不到任何可以这样做的东西。我尝试使用Excel,但它将类别ID转换为指数格式。我还需要写一个代码来实现这一点。没有这样做的示例(.TLD到.CSV) 有趣的是,php将我的.TLD文件作为普通文件读取。我在下面的代码中尝试过 <?PHP $file_handle = fopen("PG.TLD", "rb"); $line = 0; while ( ( $row = fgetcs

已向我提供了一个.TLD文件。它包含我的产品的类别数据(以千为单位)。问题是我需要将其转换为CSV,但我在网上找不到任何可以这样做的东西。我尝试使用Excel,但它将类别ID转换为指数格式。我还需要写一个代码来实现这一点。没有这样做的示例(.TLD到.CSV)

有趣的是,php将我的.TLD文件作为普通文件读取。我在下面的代码中尝试过

<?PHP
$file_handle = fopen("PG.TLD", "rb");
$line = 0;
while ( ( $row = fgetcsv($file_handle) ) !== false ) {
if ($line <=0) {
    // Skip headers
    $line++;
    continue;
}
if($line >0){
    $texts = implode(',', $row);
    echo serialize($texts);
 }
}
fclose($file_handle);
?>

它使用内爆函数,但不在任何地方使用“,”。下面是上述代码的输出 我基本上需要从一个文件中读取类别ID,并将其与.TLD文件中的类别ID匹配,以获得正确的类别名称。这是sample.TLD文件

ProductGroupCode说明ProductGroupLevel
1000台计算机1
1001电源和机架设备1
1002存储器1 1003显示1
1004通信1
1005网络1
1004128视频和音频会议设备2
1004403 IP语音(VOIP)2
1005129网络接口卡2
1005130无线网络2
1005140交换机和集线器2
1005129001154电话/电源线NIC 3
1005129001155令牌环NIC 3
100513001156天线和放大器3
100513001157无线接入点(AP)3
100513001158无线网桥3
100513001159无线布线和组件3

在这个文件中,我的搜索应该是这样的,

如果ProductGroupCode为100513001156而不是get description天线和放大器

请仔细阅读文档@shrilekha此处此函数接受第三个参数作为该传递空间中的分隔符,而不是tip的默认值commaThanks,则我在第三个分隔符中传递了“”(空格),显示,在我的类别描述而不是列之间。我肯定是做错了什么。s:29:“1001电源和机架设备1”;明白了“电源和机架设备”在这个字符串本身它有空间。因此,它认为所有事物都是由空间分隔开来的单独标记。因此,请数据提供者在ProductGroupCode、Description和ProductGroupLevel之间加逗号,否则请询问他们自己,如果字符串本身具有与分隔符相同的符号(即空格),如何解析它。并要求他们将分隔的空格替换为逗号或管道分隔值。如果他们没有给出csv或管道分隔值,请确认ProductGroupCode、Description、ProductGroupLevel的模式,并使用正则表达式尝试标记stringHmm。由于文件位于不同的区域和部门,要想找到负责文件的人来更改文件类型有点困难,但我还是会尝试一下。谢谢