V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jianyan74
V2EX  ›  PHP

PHP 简单导出导入 excel

  •  
  •   jianyan74 · 2019-06-19 15:54:16 +08:00 · 3236 次点击
    这是一个创建于 1770 天前的主题,其中的信息可能已经有所发展或是发生改变。

    php-excel

    安装

    composer require jianyan74/php-excel
    

    引入

    use jianyan\excel\Excel;
    

    Demo

    // [名称, 字段名, 类型, 类型规则]
    $header = [
        ['ID', 'id', 'text'],
        ['手机号码', 'mobile'], // 规则不填默认 text
        ['openid', 'fans.openid', 'text'],
        ['昵称', 'fans.nickname', 'text'],
        ['关注 /扫描', 'type', 'selectd', [1 => '关注', 2 => '扫描']],
        ['性别', 'sex', 'function', function($model){
            return $model['sex'] == 1 ? '男' : '女';
        }],
        ['创建时间', 'created_at', 'date', 'Y-m-d'],
    ];
    
    $list = [
        [
            'id' => 1,
            'type' => 1,
            'mobile' => '18888888888',
            'fans' => [
                'openid' => '123',
                'nickname' => '昵称',
            ],
            'sex' => 1,
            'create_at' => time(),
        ]
    ];
    

    导出

    // 简单使用
    return Excel::exportData($list, $header);
    
    // 定制 默认导出 xlsx 支持 : xlsx/xls/html/csv
    return Excel::exportData($list, $header, '测试', 'xlsx');
    
    // 另外一种导出 csv 方式
    return Excel::exportCsvData($list, $header);
    
    

    导入

    /**
     * 导入
     *
     * @param $filePath 文件路径
     * @param int $startRow 开始行数 默认 1
     * @return array|bool|mixed
     */
    $data = Excel::import($filePath, $startRow);
    
    3 条回复    2019-06-20 15:54:23 +08:00
    chensong004
        1
    chensong004  
       2019-06-19 16:14:08 +08:00 via Android
    马一下,正好能用到
    jianyan74
        2
    jianyan74  
    OP
       2019-06-19 16:17:07 +08:00
    payton93
        3
    payton93  
       2019-06-20 15:54:23 +08:00
    马一下+1
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5357 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 05:55 · PVG 13:55 · LAX 22:55 · JFK 01:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.