AI编程助手
AI免费问答

php 生成excel文件

  2016-06-13 10:08   1691浏览 原创

php 生成excel文件 本文章收藏了三款php 生成excel文件代码程序,第一款为比较全面的生成函数,后面二款很简单,但是不如第一款好,好了现在来看看生成excel的原理吧。

php教程 生成excel文件
本文章收藏了三款php 生成excel文件代码程序,第一款为比较全面的生成函数,后面二款很简单,但是不如第一款好,好了现在来看看生成excel的原理吧。
*/

class excel{             var $header = " ";        var $footer = "";     var $lines = array ();        var $worksheet_title = "table1";            function addrow ($array) {                 $cells = "";                          foreach ($array as $k => $v):                                // 加个字符串与数字的判断 避免生成的 excel 出现数字以字符串存储的警告                if(is_numeric($v)) {                    // 防止首字母为 0 时生成 excel 后 0 丢失                    if(substr($v, 0, 1) == 0) {                        $cells .= "" . $v . "n";                     } else {                        $cells .= "" . $v . "n";                     }                 } else {                    $cells .= "" . $v . "n";                 }               endforeach;               // transform $cells content into one row            $this->lines[] = "n" . $cells . "n";            }              function addarray ($array) {               // run through the array and add them into rows            foreach ($array as $k => $v):                $this->addrow ($v);            endforeach;            }            function setworksheettitle ($title) {               // strip out special chars first            $title = preg_replace ("/[\|:|/|?|*|[|]]/", "", $title);               // now cut it to the allowed length            $title = substr ($title, 0, 31);               // set title            $this->worksheet_title = $title;            }          function generatexml ($filename) {                  header("content-type: application/vnd.ms-excel; charset=utf-8");             header("content-disposition: inline; filename="" . $filename . ".xls"");              echo strips教程lashes ($this->header);            echo "nworksheet_title . "">nn";            echo "n";            echo implode ("n", $this->lines);            echo "nn";            echo $this->footer;            }       }         /** *   非框架使用方法 * *   require_once('excel.php'); *   $doc = array ( *        0 => array ('中国', '中国人', '中国人民', '123456"); *   ); *   $xls = new excel; *   $xls->addarray ( $doc ); *   $xls->generatexml ("mytest"); */   ?>

方法二
其实在做真正的应用的时候,大家可以将数据从数据库教程中取出,然后按照每一列数据结束后加t,每一行数据结束后加n的方法echo出来,在php的开头用header("content-type:application/vnd.ms-excel");表示输出的是excel文件,用header("content-disposition:filename=test.xls");表示输出的文件名为text.xls。这样就ok了。

       header("content-type:application/vnd.ms-excel");

       header("content-disposition:filename=test.xls");

       echo "test1";

       echo "test2";

       echo "test1";

       echo "test2";

       echo "test1";

       echo "test2";

       echo "test1";

       echo "test2";

       echo "test1";

       echo "test2";

       echo "test1";

       echo "test2";

?>

方法三


  header("content-type:   application/octet-stream"); 
  header("accept-ranges:   bytes"); 
  header("content-type:application/vnd.ms-excel");   
  header("content-disposition:attachment;filename=export_excel_gshjsl.xls");   
  
  $tx='表头'; 
  echo   $tx."nn";
  echo   "编号"."t"; 
  echo   "姓名"."t"; 
  echo   "n";

 echo "="411481198507150666""."t";
 echo "="0123456""."t";
 echo "n";
 ?>

php免费学习视频:立即学习
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。