Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP_XLSXWriter问题_Php_Excel 2007 - Fatal编程技术网

PHP_XLSXWriter问题

PHP_XLSXWriter问题,php,excel-2007,Php,Excel 2007,我正在使用 我要执行以下预期输出: 这是我的密码: <?php include_once('./PHP_XLSXWriter-master/xlsxwriter.class.php'); $writer = new XLSXWriter(); $sheet_name = 'Sheet1'; $header = array("A", "B", "C"); $writer->writeSheetRow($sheet_name, $header); $writer->mar

我正在使用
我要执行以下预期输出:

这是我的密码:

<?php
include_once('./PHP_XLSXWriter-master/xlsxwriter.class.php');

$writer = new XLSXWriter();
$sheet_name = 'Sheet1';

$header = array("A", "B", "C");

$writer->writeSheetRow($sheet_name, $header);

$writer->markMergedCell($sheet_name, $start_row = ?, $start_col = ?, $end_row = ?, $end_col = ?);

$writer->writeToFile('test.xlsx');
?>


该如何控制?在我的代码里

可以有更好的选择,但我只能做这种变通。这可能对你有帮助

<?php
include_once("xlsxwriter.class.php"); //include
$writer = new XLSXWriter();     //new writer
$sheet_name = 'sheets';   //sheetname
$header = array("string","string","string","string","string","string");  // header-made for six columns
$row1 = array("A"," ","B"," ","C"); //column B1, D1 made blank to match formatting
$writer->writeSheetHeader($sheet_name, $header, $suppress_header_row = true);   //write header
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 0, $end_row = 1, $end_col = 1);  //merge cells for A
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 2, $end_row = 0, $end_col = 3);  //merge cells for B
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 4, $end_row = 0, $end_col = 5);  //merge cells for C
$writer->writeSheetRow($sheet_name, $row1);   //write data
$writer->writeToFile('test.xlsx');  //save file
?>

编辑:如果需要循环以重复相同的合并样式,请执行以下操作

<?php
include_once("xlsxwriter.class.php"); //include
$writer = new XLSXWriter();     //new writer
$sheet_name = 'sheets';   //sheetname
$header = array("string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string");  // header-made for 19 columns
$row1 = array("A"," ","B"," ","C"," ","D"," ","E"," ","F"," ","G"," ","H"," ","I"," ","J"); //column B1, D1, F1, H1, J1, L1, N1, P1, R1 made blank to match formatting
$writer->writeSheetHeader($sheet_name, $header, $suppress_header_row = true);   //write header
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 0, $end_row = 1, $end_col = 1);  //merge cells for A
$j = 2; //start column
for ($i=0; $i<9; $i++)
{
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = $j, $end_row = 0, $end_col = $j+1);  //merge cells
$j+=2;
}
$writer->writeSheetRow($sheet_name, $row1);   //write data
$writer->writeToFile('test.xlsx');  //save file
?>

可以有更好的选择,但我只能做这种变通。这可能对你有帮助

<?php
include_once("xlsxwriter.class.php"); //include
$writer = new XLSXWriter();     //new writer
$sheet_name = 'sheets';   //sheetname
$header = array("string","string","string","string","string","string");  // header-made for six columns
$row1 = array("A"," ","B"," ","C"); //column B1, D1 made blank to match formatting
$writer->writeSheetHeader($sheet_name, $header, $suppress_header_row = true);   //write header
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 0, $end_row = 1, $end_col = 1);  //merge cells for A
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 2, $end_row = 0, $end_col = 3);  //merge cells for B
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 4, $end_row = 0, $end_col = 5);  //merge cells for C
$writer->writeSheetRow($sheet_name, $row1);   //write data
$writer->writeToFile('test.xlsx');  //save file
?>

编辑:如果需要循环以重复相同的合并样式,请执行以下操作

<?php
include_once("xlsxwriter.class.php"); //include
$writer = new XLSXWriter();     //new writer
$sheet_name = 'sheets';   //sheetname
$header = array("string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string","string");  // header-made for 19 columns
$row1 = array("A"," ","B"," ","C"," ","D"," ","E"," ","F"," ","G"," ","H"," ","I"," ","J"); //column B1, D1, F1, H1, J1, L1, N1, P1, R1 made blank to match formatting
$writer->writeSheetHeader($sheet_name, $header, $suppress_header_row = true);   //write header
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = 0, $end_row = 1, $end_col = 1);  //merge cells for A
$j = 2; //start column
for ($i=0; $i<9; $i++)
{
$writer->markMergedCell($sheet_name, $start_row = 0, $start_col = $j, $end_row = 0, $end_col = $j+1);  //merge cells
$j+=2;
}
$writer->writeSheetRow($sheet_name, $row1);   //write data
$writer->writeToFile('test.xlsx');  //save file
?>


Nice…但是如果我有一个从B到K的行名,这意味着我需要为每个行分别编写10个代码?For循环无法执行此操作?行名称或列名@KKLMichaelIf如果每次合并都是相同的样式,那么就可以使用循环。如果是不同类型的合并,可以使用循环@KKLMichael@KKLMichael:有一个编辑,我想它会对你有帮助。你能帮我把图片添加到工作表中吗?很好…但是如果我有一个从B到K的行名,那意味着我需要为每个行分别写10个代码?For循环无法执行此操作?行名称或列名@KKLMichaelIf如果每次合并都是相同的样式,那么就可以使用循环。如果是不同类型的合并,可以使用循环@KKLMichael@KKLMichael当前位置有一个编辑,我想它会对您有所帮助。您能帮我将图像添加到工作表中吗?