最も単純な phpExcel エクスポートの例ですが、アドバイスをいただけますか?
php バージョン 5.2 スレッドセーフ vc6
サーバー: apache2.2 スレッド モジュール ロード メソッド (CLI)
他のページは正常に実行されています
これ以上話す必要はありません。エクスポート コードExcel は最高のシンプルなテスト コードですが、ダウンロードして開くと、次のようなプロンプトが表示されます。
無効なワークシート名を変更します。
PHP コード
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->
<?php
require_once($_SERVER['DOCUMENT_ROOT'] ."/inc/phpexcel/PHPExcel.php");
require_once($_SERVER['DOCUMENT_ROOT'] ."/inc/phpexcel/PHPExcel/Writer/Excel5.php");
// 创建一个处理对象实例
$objExcel = new PHPExcel();
$objExcel->setActiveSheetIndex(0);
$objActSheet = $objExcel->getActiveSheet();
//设置当前活动sheet的名称
$objActSheet->setTitle(iconv('utf-8','gbk', "测试工作pu名字"));
//ROW 1
$objActSheet->setCellValueByColumnAndRow(1,2,iconv('utf-8','gbk', "测试"));
//ROW 2
//ROW 3
//获取数据
//在浏览器导出
header("Content-Type: application/force-download");
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment;filename=\"导出查询.xls\"");
header('Cache-Control: max-age=0');
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
// 创建文件格式写入对象实例, uncomment
$objWriter = new PHPExcel_Writer_Excel5($objExcel);
//到文件
$objWriter->save("php://output");
?>
ログイン後にコピー
-----解決策---------------- - ---
require('config.php');//設定ファイルをロード
header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header ("Last -変更: " . gmdate("D,d M YH:i:s") . " GMT");
header ("Cache-Control: no-cache, must-revalidate");
header ( "プラグマ: no-cache");
header ('Content-type: application/x-msexcel');
header ("Content-Disposition:attachment; filename=weibo.xls" ); header ("Content-Description: PHP/INTERBASE Generated Data" );
//
// 次の行は Excel ストリームの生成を示します
//
$content = $db-> ;getList("select * from weibo_baidu");
$num = count($content);
/*echo $num;
foreach($content as $k=>$contents ){
echo $aa=$k+1;
echo "
";
//echo $contents['b_title']."
";
} */
xlsBOF(); // Excel ストリームを開始します
xlsWriteLabel(0, 0,iconv("UTF-8", "GBK",serial number) );
xlsWriteLabel(0, 1,iconv) ( "UTF-8", "GBK",パブリッシャー));
xlsWriteLabel(0, 2,iconv("UTF-8", "GBK",コンテンツ概要) );
xlsWriteLabel(0, 3, iconv("UTF-8", "GBK",URl));
xlsWriteLabel(0, 4,iconv("UTF-8", "GBK",Source));
xlsWriteLabel(0, 5, iconv("UTF-8", "GBK",fetch date));
foreach($content as $k=>$contents){
$i=$k+1;
xlsWriteLabel ( $i, 0, $i);
xlsWriteLabel($i, 1, iconv("UTF-8", "GBK",$contents['b_title']));
xlsWriteLabel($i, 2 , iconv("UTF-8", "GBK",$contents['b_info']));
xlsWriteLabel($i, 3, iconv("UTF-8", "GBK",$contents[' b_url) ']));
xlsWriteLabel($i, 4, iconv("UTF-8", "GBK",$contents['b_source']));
xlsWriteLabel($i, 5, iconv( " UTF-8", "GBK",$contents['b_tiem']));
}
xlsEOF(); // ストリームを閉じる
// --- - - 関数ライブラリの開始 -----
// Excel ファイルヘッダーの開始
function xlsBOF() {
echo Pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0 ) ;
return;
}
// Excel のファイル末尾フッター
関数 xlsEOF() {
echo Pack("ss", 0x0A, 0x00);
return;
}
// Row, Col に数値(double)を書き込む関数
function xlsWriteNumber($Row, $Col, $Value) {
echo Pack("sssss", 0x203, 14, $行、$Col、0x0);