1. Download available in browser output
Copy the Code code as follows:
/**
* Export data to CSV file
* @param array $data data
* @param array $title _arr title
* @param string $file _name CSV file name
*/
Function Export_csv (& $data, $title _arr, $file _name = ") {
Ini_set ("Max_execution_time", "3600");
$csv _data = ";
/** Title */
$nums = count ($title _arr);
for ($i = 0; $i < $nums-1; + + $i) {
$csv _data. = ' "'. $title _arr[$i]. '",';
}
if ($nums > 0) {
$csv _data. = ' "'. $title _arr[$nums-1]. "\" \ r \ n ";
}
foreach ($data as $k = = $row) {
for ($i = 0; $i < $nums-1; + + $i) {
$row [$i] = Str_replace ("\" "," \ "\" ", $row [$i]);
$csv _data. = ' "'. $row [$i]. '",';
}
$csv _data. = ' "'. $row [$nums-1]. "\" \ r \ n ";
Unset ($data [$k]);
}
$csv _data = mb_convert_encoding ($csv _data, "cp936", "UTF-8");
$file _name = Empty ($file _name)? Date (' Y-m-d-h-i-s ', Time ()): $file _name;
if (Strpos ($_server[' http_user_agent '), "MSIE")) {//fix bug in IE output Chinese name garbled
$file _name = UrlEncode ($file _name);
$file _name = str_replace (' + ', '%20 ', $file _name);
}
$file _name = $file _name. '. csv ';
Header ("content-type:text/csv;");
Header ("Content-disposition:attachment;filename=". $file _name);
Header (' cache-control:must-revalidate,post-check=0,pre-check=0 ');
Header (' expires:0 ');
Header (' Pragma:public ');
echo $csv _data;
}
2. Save to File
Copy the Code code as follows:
function Export_csv ($data, $title _arr, $file _name = ") {
$csv _data = ";
/** Title */
$nums = count ($title _arr);
for ($i = 0; $i < $nums-1; + + $i) {
$csv _data. = ' "'. $title _arr[$i]. '",';
}
if ($nums > 0) {
$csv _data. = ' "'. $title _arr[$nums-1]. "\" \ r \ n ";
}
foreach ($data as $k = = $row) {
for ($i = 0; $i < $nums-1; + + $i) {
$row [$i] = Str_replace ("\" "," \ "\" ", $row [$i]);
$csv _data. = ' "'. $row [$i]. '",';
}
$csv _data. = ' "'. $row [$nums-1]. "\" \ r \ n ";
Unset ($data [$k]);
}
$file _name = Empty ($file _name)? Date (' Y-m-d-h-i-s ', Time ()): $file _name;
File_put_contents ($file _name, $csv _data);
}
Invoke Example (save to file):
Copy the Code code as follows:
$file _name= "/var/www/tmp/test.csv";
$header = Array (
' 0 ' = ' parameter id ',
' 1 ' = ' parameter name ',
' 2 ' = ' statistics count ',
' 3 ' = ' Percentage of statistics ',
' 4 ' = ' Unique users ',
' 5 ' = ' percent of unique users ',
' 6 ' = ' per capita number '
);
$csvList = Array (Array ("111", "title", "12", "100%", "23", "50%", "4"));
Export_csv ($csvList, $header, $file _name);
http://www.bkjia.com/PHPjc/760288.html www.bkjia.com true http://www.bkjia.com/PHPjc/760288.html techarticle 1. In the browser output provides download copy code code as follows:/** * Export data to CSV file * @paramarray $data data * @paramarray $title _arr title * @paramstring $file _namecsv file Name ...