数日前に php-excel-reader クラスを使用して Excel コンテンツをインポートした記事を書きました。ところで、私は単純な Excel という非常に単純なエクスポート xls クラスを使用しています。とても使いやすいです!
簡単な Excel ソース コードは次のとおりです:
コードをコピー コードは次のとおりです:
php
/**
* PHP5 から生成する単純な Excel
*
* @package Utilities
* @license http://www.opensource.org/licenses/mit-license.php
* @author Oliverシュワルツ
* @バージョン 1.0
*/
class Excel_Xml
{
private $header = "n
private $footer = "
private $lines = array();
プライベート $sEncoding;
プライベート $bConvertTypes;
プライベート $sWorksheetTitle;
パブリック関数 __construct($sEncoding = 'UTF-8', $bConvertTypes = '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); >sWorksheetTitle = $title;
}
プライベート関数 addRow ($array)
{
$cells = ""
foreach ($array as $k => $v) :
$type = 'String';
if ($this->bConvertTypes === true && is_numeric($v)):
$type = 'Number'; 🎜>$v = htmlentities( $v, ENT_COMPAT, $this->sEncoding);
$cells .= "
endforeach;
$this->lines[] = "n" 。 ;
}
public function addArray ($array)
{
foreach ($array as $k => $v)
$this->addRow ($v); 🎜>}
public functiongenerateXML ($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="" . $ファイル名 . ".xls"" );
echo Stripeslashes (sprintf($this->header, $this->sEncoding));
echo "n
/*** @author mckee * @blog www.phpddt.com */
require_once 'excel.class.php'; $xls = new Excel_Xml('UTF-8',false,'test');
$data = array(
1 => array( '名前','アドレス')、
2 = > array('php diandiantong','www.phpddt.com')、
3 => array('Baidu','www.baidu. com')
);
$xls ->addArray($data);
?>
エクスポート結果は以下のようになります: