...或者它已永久性地移动到了新网址ERR_INVALID。。。

...或者它已永久性地移动到了新网址ERR_INVALID。。。

2023年6月25日发(作者:)

phpexcel⽹页可能暂时⽆法连接,或者它已永久性地移动到了新⽹址ERR_INVALID。。。最近使⽤phpexcel导出⽂件时,遇到了⽹页可能暂时⽆法连接,或者它已永久性地移动到了新⽹址的问题,困扰我了好久。在⽹上找了好多种解决⽅法,除了将excel版本由excel2007降低到excel5 有点⽤外,其他的都尝试⽆果。但是,将excel版本由excel2007降低到excel5⼜引起了其他问题,⽐如,导出报告中的批注不能⽣效,复制导出excel中的内容到另⼀个excel,颜⾊格式都发⽣变化等等。最终⽆可奈何,⾮要将这个问题从根本上解决才能消除⼤患。思路如下:1. 找到根本原因使⽤$objWriter->save($filename); $this->display(); 这种⽅式查看⽣成excel报错的具体现象代码如下:$filename="";ob_end_clean();ini_set('memory_limit','-1');set_time_limit(0);unlink($filename);$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');$objWriter->save($filename);$this->display();// header("Pragma: public");// header("Expires: 0");// header("Cache-Control:must-revalidate, post-check=0, pre-check=0");// header("Content-Type:application/force-download");// header("Content-Type:application/-execl");// header("Content-Type:application/octet-stream");// header("Content-Type:application/download");// header('Content-Disposition:attachment;filename='.$filename);// header("Content-Transfer-Encoding:binary");// ob_end_clean();// $objWriter->save( 'php://output');// unlink($filename);// exit;

修改后导报告的页⾯出现如下报错:2. 查找出错⽂件由上图可知,报错的根本原因在的第434⾏,找到该⽂件的434⾏,如下所⽰:

找到了报错点之后,再由⽩图中的错误信息可以看出是 260⾏通过如下参数调⽤了_writeRelationship⽅法,但参数中第4个值$pTarget为NULL,所以引出了Invalid parameters passed.这个报错

继续追踪 260⾏,如下所⽰,在该处调⽤_writeRelationship⽅法时通过$hyperlink->getUrl()获取到了NULL,该⽅法与getHyperlink有关

3.反思1)我在系统到报告出现上述现象的情况并不是持续的,⽽是有些出问题,有些⼜没有。2)这个报错与getHyperlink有关,⽽我的excel会设置⽇志超链接所以我猜测是设置超链接时,没有对⽇志url进⾏判断,可能某些时候的的url是NULL,所以导致了上述问题。最终排查结果与猜想⼀致,解决问题。

出现“⽹页可能暂时⽆法连接,或者它已永久性地移动到了新⽹址”这个问题的原因可能有很多,但根据实际情况抽丝剥茧,⽐⼀直在⽹上尝试各种解决⽅法去掩盖这个问题要好太多了,继续加油吧!

发布者:admin,转转请注明出处:http://www.yc00.com/news/1687678964a30893.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信