- /**
- * 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;
- }
Copy Code2,php export CSV data and save to file
-
-
-
!--? php function export_csv ($data, $title _arr, $file _name = ") { li>
$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);
- }
-
Copy CodeAttached, PHP export CSV data invocation example (save to file):
- $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);
Copy Code |