ÓÃPHPÉú³ÉexcelÎļþµ½Ö¸¶¨Ä¿Â¼

5年以前  |  阅读数:485 次  |  编程语言:PHP 

×i½u¹«Ë¾ÒªÉu³É±¨±i£¬ÓÃPHPÉu³É¡£

header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=test_data.xls");

ÎÒ°Ù¶ÈÁËÏ£¬Ã²ËÆÕa¸oºÜ¿iÄܹ»ÊµÏÖ£¬µ«ÊÇÕa¸oÎļþÈ´ÊÇÉu³ÉÔÚÔÚa¯ÀÀÆ÷ÏÂÔصĵØ*½£¬

ÎÒÏe°ÑÉu³ÉµÄÎļþÉu³Éµ½Ö¸¶¨µÄĿ¼£¬ÕaÑuÄÜ*ñʵÏÖÄØ£¿

»¹ÓУ¬¿ÉÒÔÍuÀiÃae²aÈeͼƬÂð£¿

PHPExcelÊÇÓ¢Îĵģ¬¿´ÁË°eÌiû¿´¶®¡£ÓÐûÓÐÖ±½ÓÉu³ÉµÄÀý×Ó¿´°¡£¿

ÏÂÃaeÎÒÃǸ½ÉÏÀý×Ó£º


    /**
     +----------------------------------------------------------
     * µ¼ÈeËuÐeµÄÀa¿a ͬjavaµÄImport
     * ±¾º¯ÊýÓлº´ae¹¦ÄÜ
     +----------------------------------------------------------
     * @param string $class Àa¿aÃuÃu¿Õ¼a×Ö*u´®
     * @param string $baseUrl ÆðʼÂ*¾¶
     * @param string $ext µ¼ÈeµÄÎļþÀ(C)Õ¹Ãu
     +----------------------------------------------------------
     * @return boolen
     +----------------------------------------------------------
     */
    function import($class, $baseUrl = '', $ext='.class.php') {
      static $_file = array();
      $class = str_replace(array('.', '#'), array('/', '.'), $class);
      if ('' === $baseUrl && false === strpos($class, '/')) {
        // ¼i²e±ðÃuµ¼Èe
        return alias_import($class);
      }
      if (isset($_file[$class . $baseUrl]))
        return true;
      else
        $_file[$class . $baseUrl] = true;
      $class_strut = explode('/', $class);
      if (empty($baseUrl)) {
        if ('@' == $class_strut[0] || APP_NAME == $class_strut[0]) {
          //¼ÓÔص±Ç°ÏiÄ¿Ó¦ÓÃÀa¿a
          $baseUrl = dirname(LIB_PATH);
          $class = substr_replace($class, basename(LIB_PATH).'/', 0, strlen($class_strut[0]) + 1);
        }elseif ('think' == strtolower($class_strut[0])){ // think ¹Ù*½»uÀa¿a
          $baseUrl = CORE_PATH;
          $class = substr($class,6);
        }elseif (in_array(strtolower($class_strut[0]), array('org', 'com'))) {
          // org µÚÈý*½¹«¹²Àa¿a com ÆoÒµ¹«¹²Àa¿a
          $baseUrl = LIBRARY_PATH;
        }else { // ¼ÓÔØÆaËuÏiÄ¿Ó¦ÓÃÀa¿a
          $class = substr_replace($class, '', 0, strlen($class_strut[0]) + 1);
          $baseUrl = APP_PATH . '../' . $class_strut[0] . '/'.basename(LIB_PATH).'/';
        }
      }
      if (substr($baseUrl, -1) != '/')
        $baseUrl .= '/';
      $classfile = $baseUrl . $class . $ext;
      if (!class_exists(basename($class),false)) {
        // Èç¹uÀa²»´aeÔÚ Ôoµ¼ÈeÀa¿aÎļþ
        return require_cache($classfile);
      }
    }

    /**
    * µ¼³oEXCEL±i¸ñ
    * @param array $data Êý¾Ý£¬¶þάÊý×e£¬Ã¿ÌoÊý¾ÝÒ»Ìo¼Ç¼
    * @param array $title ÿÁÐÊý¾ÝµÄ×Ö¶ÎÃu£¬Ò»Î¨Êý×e£¬±ØÐeºÍÊý¾Ý˳ÐoÒ»Ö£¨¿ÉÊ¡ÂÔ£(C)
    * @param string $filename excelÃu³Æ
    * @param array $field ÐeÒªÖ¸¶¨µ¼³oµÄÊý¾Ý×ֶΣ¬ÅÅÐo±ØÐeºÍtitleÒ»Ö£¬¾ÍÊǺͲe³oÊý¾ÝµÄÊý×ekeyÖµ
    */
    function exportExcel($data='',$title='',$filename='excel',$field=array()){
      if(!$data || !is_array($data)) return false;
      if($filename=='') $filename='excel';
      if($field && is_array($field)){//Ö»Òªµ¼³oÖ¸¶¨×ֶΣ¬ÇÒ°´Õa¸o˳Ðoµ¼³o
        $dateNew=array();
        foreach ($data as $k=>$v){
          foreach ($field as $fkey){
            $dateNew[$k][$fkey]=$v[$fkey];
          }
        }
        $data=$dateNew;
      }

      import("@.ORG.Util.ExcelXml");//µ÷Óõ¼³oexcelÀa
      $xls = new ExcelXml('UTF-8', false, 'Sheet1');
      $xls->addArray($data,$title);
      $xls->generateXML($filename);
    }
 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
文件下载
贪吃蛇
获取IMEI
双位运算符
发送邮件
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
提取后缀名
年的日历图
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例