国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

用Simple Excel導出xls實現方法

2024-05-04 23:13:18
字體:
來源:轉載
供稿:網友
因為前幾天寫了篇文章,用php-excel-reader類導入excel內容,順便說些excel導出問題,我用的是simple excel,一個很簡單的導出xls類,特好用!
simple excel源碼如下:

復制代碼 代碼如下:


<?php
/**
* Simple excel generating from PHP5
*
* @package Utilities
* @license
* @author Oliver Schwarz <oliver.schwarz@gmail.com>
* @version 1.0
*/
class Excel_Xml
{
private $header = "<?xml version=/"1.0/" encoding=/"%s/"?/>/n<Workbook xmlns=/"urn:schemas-microsoft-com:office:spreadsheet/" xmlns:x=/"urn:schemas-microsoft-com:office:excel/" xmlns:ss=/"urn:schemas-microsoft-com:office:spreadsheet/" xmlns:html=/"http://www.w3.org/TR/REC-html40/">";
private $footer = "</Workbook>";
private $lines = array();
private $sEncoding;
private $bConvertTypes;
private $sWorksheetTitle;
public function __construct($sEncoding = 'UTF-8', $bConvertTypes = false, $sWorksheetTitle = 'Table1')
{
$this->bConvertTypes = $bConvertTypes;
$this->setEncoding($sEncoding);
$this->setWorksheetTitle($sWorksheetTitle);
}
public function setEncoding($sEncoding)
{
$this->sEncoding = $sEncoding;
}
public function setWorksheetTitle ($title)
{
$title = preg_replace ("/[///|:|//|/?|/*|/[|/]]/", "", $title);
$title = substr ($title, 0, 31);
$this->sWorksheetTitle = $title;
}
private function addRow ($array)
{
$cells = "";
foreach ($array as $k => $v):
$type = 'String';
if ($this->bConvertTypes === true && is_numeric($v)):
$type = 'Number';
endif;
$v = htmlentities($v, ENT_COMPAT, $this->sEncoding);
$cells .= "<Cell><Data ss:Type=/"$type/">" . $v . "</Data></Cell>/n";
endforeach;
$this->lines[] = "<Row>/n" . $cells . "</Row>/n";
}
public function addArray ($array)
{
foreach ($array as $k => $v)
$this->addRow ($v);
}
public function generateXML ($filename = 'excel-export')
{
$filename = preg_replace('/[^aA-zZ0-9/_/-]/', '', $filename);
header("Content-Type: application/vnd.ms-excel; charset=" . $this->sEncoding);
header("Content-Disposition: inline; filename=/"" . $filename . ".xls/"");
echo stripslashes (sprintf($this->header, $this->sEncoding));
echo "/n<Worksheet ss:Name=/"" . $this->sWorksheetTitle . "/">/n<Table>/n";
foreach ($this->lines as $line)
echo $line;
echo "</Table>/n</Worksheet>/n";
echo $this->footer;
}
}
?>


使用php案例如下:

復制代碼 代碼如下:


<?php
/**
* @author mckee
* @blog
*/
require_once 'excel.class.php';
$xls = new Excel_Xml('UTF-8',false,'測試');
$data = array(
1 => array('名稱','地址'),
2 => array('php點點通','www.phpddt.com'),
3 => array('百度','www.baidu.com')
);
$xls->addArray($data);
$xls->generateXML('name4test');

?>


導出結果如下圖:

用Simple Excel導出xls實現方法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 皋兰县| 凭祥市| 建水县| 西城区| 石泉县| 镇远县| 凤阳县| 黑龙江省| 哈尔滨市| 六枝特区| 曲水县| 麻阳| 琼海市| 惠东县| 张家港市| 临高县| 凭祥市| 阿尔山市| 且末县| 无极县| 柯坪县| 临澧县| 图们市| 阿荣旗| 闸北区| 榆树市| 攀枝花市| 盐池县| 镇雄县| 梅州市| 淮阳县| 洪雅县| 汝阳县| 方城县| 玉环县| 夏津县| 陆川县| 桃江县| 邵阳县| 济宁市| 英吉沙县|