如何在csv文件中插入数组并置?

问题描述 投票:0回答:1

我通过读取从csv文件中检索值,我想将这些值写入.txt文件中,并使文件的每一行都像这样:MMXC1_“ | 48654641 | 1 | 2

但是当我发送它时,出现“通知:数组到字符串的转换”,我该怎么办?

$constante[] = "MMXC1_";

    $temp = array_column($resultat, 'MAGCOD', 'MAGAS400');


    if (($handle = fopen("$nomcsv", "r")) !== FALSE) { 

                $firstLine = true;

                while (($data = fgetcsv($handle, 1000000, ";")) !== FALSE) 
                {   
                        if(!$firstLine) {

                                    $EAN[] = $temp[$data[3]];
                                    $min[] = $data[12];
                                    $max[] = $data[13];


                          }
                     $firstLine = false;
                }   
       }


                            $data_final[] = $constante.'|'.$EAN.'|'.$min.'|'.$max; 


                            $cheminfile = "C:/wamp64/www/retail/csv/csv/csv_finaux/MMX".date('His').".txt";

                            $fp = fopen("$cheminfile", "w");

                            $delimiter = ';';

                            fputcsv($fp, $data_final, $delimiter);                              

                            fclose($fp);
php csv fputcsv
1个回答
0
投票

将您的代码重写为:

$constante = "MMXC1_";  // it is a STRING

$temp = array_column($resultat, 'MAGCOD', 'MAGAS400');

if (($handle = fopen("$nomcsv", "r")) !== FALSE) { 
    $firstLine = true;
    while (($data = fgetcsv($handle, 1000000, ";")) !== FALSE) 
    {   
        if(!$firstLine) {
            // Create line here and immediately add it to `$data_final`
            $data_final[] = $constante.'|'.$temp[$data[3]].'|'.$data[12].'|'.$data[13]; 
         }
         $firstLine = false;
    }   
}

$cheminfile = "C:/wamp64/www/retail/csv/csv/csv_finaux/MMX".date('His').".txt";
$fp = fopen("$cheminfile", "w");

$delimiter = ';';

fputcsv($fp, $data_final, $delimiter);                              

fclose($fp);
© www.soinside.com 2019 - 2024. All rights reserved.