簡體   English   中英

如何在php的csv中將sql查詢結果插入一行?

[英]How to insert sql query results in one single line in csv from php?

以下代碼將sql查詢結果輸出到csv文件中:

<?php
// Report all errors except E_NOTICE   
error_reporting(E_ALL ^ E_NOTICE); 

//connection file
include("connection.php");  

$query      = 'SELECT resting_blood_sugar,serum_cholesterol,thalach,oldpeak,result,date from hd_test WHERE patient_id = 2';         
$output = fopen('N:\oldpatientgraph.csv', 'w');
$result = mysqli_query($link,$query);

// loop over the rows, outputting them
while ($row = mysqli_fetch_assoc($result)) fputcsv($output, $row);

?>

OUTPUT

csv文件包含以下格式的輸出:

1,1,1,1,1,11-1-2015#line1

2,3,1,4,2,1-1-2000#line2

而我想在一行中輸出結果,如下所示:

1,1,1,1,1,11-1-2015,2,3,1,4,2,1-1-2000#line1

誰在這里知道怎么做?

只是對行進行concancenate,如下所示:

// loop over the rows, outputting them
$arr1 = array();
while ($row = mysqli_fetch_assoc($result)){
   $arr1 = array_merge($arr1,array_values($row));
}
fputcsv($output,$arr1);

你可以試試這個

$output = fopen('N:\oldpatientgraph.csv', 'w');
$csvString = '';
$index = 0;
while ($row = mysqli_fetch_assoc($result)){
  if ($key) {
    $csvString.=',';
  }
  $csvString .= implode(',',array_values($row)); #Array values to string
  $index = 1;
}

fwrite($output, $csvString); #Write string to file
fclose($output);

注意:上面的代碼將為您提供1行的所有數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM