首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Phpexcel不能写入xls 97-2003格式

Phpexcel不能写入xls 97-2003格式
EN

Stack Overflow用户
提问于 2014-06-10 07:00:33
回答 1查看 8.2K关注 0票数 2
代码语言:javascript
运行
复制
                <?
require_once '../Classes/PHPExcel.php';
require_once '../Classes/PHPExcel/IOFactory.php';
require_once '../Classes/PHPExcel/Writer/Excel2007.php';

 $objPHPExcel = PHPExcel_IOFactory::load("../../ruw/myfile.xlsx");
 $objPHPExcel->setActiveSheetIndex(0);
 $row = $objPHPExcel->getActiveSheet()->getHighestRow()+1;


 $objPHPExcel->getActiveSheet()->SetCellValue("A5",$m5);
 $objPHPExcel->getActiveSheet()->SetCellValue("B5",$m1);

    $objPHPExcel->getActiveSheet()->getStyle('A1:L300')->
    getProtection()->setHidden(PHPExcel_Style_Protection::OTECTION_PROTECTED);

  $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true);
  $objPHPExcel->getActiveSheet()->getProtection()->setSort(true);
  $objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true);
  $objPHPExcel->getActiveSheet()->getProtection()->setInsertColumns(true);
  $objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true);
  $objPHPExcel->getActiveSheet()->getProtection()->setFormatColumns(true);
   $objPHPExcel->getActiveSheet()->getProtection()->setDeleteColumns(true);
   $objPHPExcel->getActiveSheet()->getProtection()->setDeleteRows(true);
   $objPHPExcel->getActiveSheet()->getProtection()->setSelectLockedCells(true);
   $objPHPExcel->getActiveSheet()->getProtection()->setPassword($passy);


    $objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
    $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);

   $d =$m1;
   $d = preg_replace('/[^a-zA-Z0-9%$#@*&^-_()]/','',$m1);
   $fil = "../../ruw/".$d.".xlsx";
   $objWriter->save($fil);

    echo "<label style='font:Verdana, Geneva, sans-serif; font-size:20px; color:#CE0000'>
    File download start automatically if not click here to </label>&nbsp;";
    echo "<a  style='font:Verdana, Geneva, sans-serif; color:#000; font-weight:bold;'   href='$fil'>Download</a>&nbsp;";
   echo "<script type='text/javascript'>" ;
    echo "reply_click(".$_SESSION['mid'].",'$fil')";
    echo "</script>";
    ?>

这段代码在".xlsx“上写得很好,但没有写任何".xls”。

如果我尝试编写和打开.xls,就会得到不同的格式、不可读的内容和xml解析arror。

我想写到.xls 97-2003,并将其保存为.xls 97-2003格式。

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2014-06-10 07:06:58

您使用了错误的Writer实例,需要将PHPExcel_Writer_Excel2007更改为PHPExcel_Writer_Excel5()

代码语言:javascript
运行
复制
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
$objWriter->save("myfile.xls");

注意:,您需要相应地更新包含路径。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24134771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档