PHP 导出csv类
2015-07-20 PHP 1009
final class Csv{
public $filename;
public function export($data){
if (!is_array($data)) return;
$string = \'\';$new = array();
foreach ($data as $k=>$v) {
foreach ($v as $xk=>$xv) {
final class Csv{ public $filename; public function export($data){ if (!is_array($data)) return; $string = '';$new = array(); foreach ($data as $k=>$v) { foreach ($v as $xk=>$xv) { $v[$xk] = str_replace(',','',$xv); } $new[] = implode(',',$v); } if (!empty($new)){ $string = implode("\n",$new); } header("Content-Type: application/vnd.ms-excel; charset=GBK"); header("Content-Disposition: attachment;filename={$this->filename}.csv"); echo $string; } /** * 转码函数 * * @param mixed $content * @param string $from * @param string $to * @return mixed */ public function charset($content, $from='gbk', $to='utf-8') { $from = strtoupper($from) == 'UTF8' ? 'utf-8' : $from; $to = strtoupper($to) == 'UTF8' ? 'utf-8' : $to; if (strtoupper($from) === strtoupper($to) || empty($content)) { //如果编码相同则不转换 return $content; } if (function_exists('mb_convert_encoding')) { if (is_array($content)){ $content = var_export($content, true); $content = mb_convert_encoding($content, $to, $from); eval("\$content = $content;");return $content; }else { return mb_convert_encoding($content, $to, $from); } } elseif (function_exists('iconv')) { if (is_array($content)){ $content = var_export($content, true); $content = iconv($from, $to, $content); eval("\$content = $content;");return $content; }else { return iconv($from,$to,$content); } } else { return $content; } } }
很赞哦! (0)
相关文章
文章评论
-
-
-
0条评论