如何将php查询的所有结果保存到.txt文件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将php查询的所有结果保存到.txt文件?相关的知识,希望对你有一定的参考价值。
我的查询给我一个数组结果:
$donnnes =
Table ( [0] => Table ( [sku_code] => A1101_0090_TU [SKU_EAN] => 9346799868270 ) )
我的.txt文件可以很好地创建自己,但可以像这样填充:
MMXC1_ | 9346799868270 | 0 | 0
MMXC1_ | | 0 | 1
MMXC1_ | | 1 | 4
...
[仅第一行被完全填充,在其他行中,两个管道'|'之间没有任何内容在我的var_dump($ data_final)中的“ MMXC1_”之后;所有数据都在那里,我的错误来自哪里?
$resultat = mysqli_query($bdd, "SELECT trim(concat(concat(SKU_ITEM_VARIANT,'_'),trim(SKU_SIZE)))as sku_code , SKU_EAN FROM dwh_dev.dwh_d_sku");
while ($donnees[] = mysqli_fetch_assoc($resultat)) {
}
print_r($donnees); //Array ( [0] => Array ( [sku_code] => A1101_0090_TU [SKU_EAN] => 9346799868270 )
$constante = "MMXC1_";
$temp2 = array_column($donnees, 'SKU_EAN', 'sku_code');
if (($handle = fopen("$nomcsv", "r")) !== FALSE) {
$firstLine = true;
while (($data = fgetcsv($handle, 1000000, ";")) !== FALSE)
{
if(!$firstLine) {
$SKU_EAN = $temp2[$data[6].'_'.$data[7].'_'.$data[8]];
var_dump($SKU_EAN); //A1101_0090_TU A1104_0090_TU
// Create line here and immediately add it to `$data_final`
$data_final[] = $constante.'|'.$SKU_EAN.'|'.$data[12].'|'.$data[13];
var_dump($data_final); // array(1) { ["A1101_0090_TU"]=> string(13) "9346799868270" } array(1) { [0]=> string(26) "MMXC1_|9346799868270|0|0" } array(2) { [0]=> string(26) "MMXC1_|9346799868270|0|0" [1]=> string(13) "MMXC1_||0|0" }
}
$firstLine = false;
}
}
$cheminfile = "//alcyons/IT/PhotoShoot/retail/CSV/TXT_Finaux/MMX".date('His').".txt";
$fp = fopen("$cheminfile", "w");
fputcsv($fp, $data_final, "
");
fclose($fp);
答案
您为什么在.txt文件上使用fputcsv?使用fwrite代替。
替换
fputcsv($fp, $data_final, "
");
与
foreach($data_final as $data){
fwrite($fp,$data."
");
}
以上是关于如何将php查询的所有结果保存到.txt文件?的主要内容,如果未能解决你的问题,请参考以下文章