zoukankan      html  css  js  c++  java
  • php 方便快捷导出excel

    /**
         * 导出excel
         * @param array $column
         * eg: $column = [
         *    'username' => '姓名',
         *    'age' => '年龄',
         *    'sex' => '性别'
         * ]
         * @param array $data
         * eg: $data = [
         *     ['username' => 'yht', 'age'=>20, 'sex'=>'男'],
         *     ['username' => 'jsh', 'age'=>18, 'sex'=>'女'],
         *     ['username' => 'klerk', 'age'=>25, 'sex'=>'男'],
         * ]
         */
        public static function exportExcel($column, $data)
        {
            $keys = array_keys($column);
    
            header("Content-type:application/vnd.ms-excel");
            header("Content-Disposition:attachment;filename=export_data.xls");
    
            $html = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">';
            $html .= '  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">';
            $html .= '    <html> ';
            $html .= '    <head> ';
            $html .= '        <meta http-equiv="Content-type" content="text/html;charset=UTF-8" /> ';
            $html .= '        <style id="Classeur1_16681_Styles"></style> ';
            $html .= '    </head> ';
            $html .= '    <body border=1> ';
            $html .= '        <div id="Classeur1_16681" align=center x:publishsource="Excel"> ';
            $html .= '        <table x:str border=1 cellpadding=1 cellspacing=1 width=100% style="border-collapse: collapse">';
            $html .= '            <tr>';
            foreach($column as $key => $value){
                $html .= '            <td>' . Html::encode($value) . '</td>';
            }
            $html .= '            </tr>';
            if($data) {
                foreach ($data as $key => $value) {
                    $html .= '    <tr>';
                    foreach ($keys as $val){
                        $html .= '     <td>' . $value[$val] . '</td>';
                    }
                    $html .= '    </tr>';
                }
            }
            $html .= '        </table> ';
            $html .= '        </div> ';
            $html .= '    </body> ';
            $html .= ' </html> ';
            echo $html;
        }
    

      

  • 相关阅读:
    Indy的TCPServer到底能支持多少个连接
    Delphi TStream 详细介绍
    WebAPI下的如何实现参数绑定
    使用 Weinre 调试移动网站及 PhoneGap 应用
    面向对象的三大特征:封装、继承、多态
    轻量级前端MVVM框架avalon
    三种工厂模式的分析以及C++实现
    简单实现TCP下的大文件高效传输
    Nunit NMock Ncover单元测试
    算法实践——数独的基本解法
  • 原文地址:https://www.cnblogs.com/freespider/p/5897085.html
Copyright © 2011-2022 走看看