tp框架导出excel的时候报错:unexcepted identifier “Closure“,excepting variable

记录一个简单的错误。

背景

用的是PhpOffice/PhpSpreadsheet

在本地环境下是可以正常导出excel的。但是线上就不行。

就会报错unexcepted identifier "Closure",好像是不能用匿名函数。

首先

本地可以正常导出,然后服务器上不可以。看了各种日志。php日志、nginx日志、tp框架的日志 。就是找不到毛病。

然后开始排查php扩展,php本地的扩展,在服务器上都安装了。

还各种修改文件夹的权限,还是没用。

在php.ini中还禁用函数,但是都没有作用。

我连代码都重新clone的一遍。

解决

最后屈服了,把服务器上的php8.0换成了php8.2,(和本地环境一致。)然后就OK了。

需要注意的是:

宝塔环境下,不能单纯的切换php版本。要把nginx的配置文件也要改掉!

php 复制代码
location ~ \.php$ {
        fastcgi_pass unix:/tmp/php-cgi-82.sock;  # 改为与PHP-FPM配置一致
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;

        # ThinkPHP 专用参数
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
相关推荐
魔道不误砍柴功1 小时前
Mac 能够连Wife,但是不能上网问题解决
网络·macos·php
搬码临时工8 小时前
怎样让外网计算机访问局域网计算机?通过公网地址访问不同内网服务的设置方法
开发语言·php
CHEN5_0211 小时前
【CouponHub项目开发】EasyExcel解析Excel并使用线程池异步执行和延时队列兜底
java·数据库·excel
我想起个名字11 小时前
sqlserver2008导入excel表数据遇到的问题
sqlserver·excel
Metaphor69211 小时前
Java 如何在 Excel 中添加超链接?使用 Spire.XLS for Java 轻松实现
java·经验分享·excel
JAVA不会写13 小时前
EasyExcel:阿里开源的高效 Excel 处理工具,轻松解决 POI 内存溢出问题
excel
小雪人82819 小时前
wps的excel如何转为谷歌在线表格
excel·wps
Fortinet_CHINA20 小时前
案例精述 | 防护即智能 Fortinet赋能英科全栈安全重构实践
安全·重构·php
Brown.alexis21 小时前
处理省市区excel数据加工成SQL
python·sql·excel
BingoGo21 小时前
PHP Swoole/WebMan/Laravel Octane 等长驻进程框架内存泄露诊断与解决方案
后端·php