[top-think/think]php5.6 下不兼容 post text xml json

2023-12-27 72 views
7

[14-Apr-2016 21:35:50 PRC] PHP Fatal error: Uncaught exception 'think\exception\ErrorException' with message 'Undefined index: source' in /app/cis-meiya/weixin/thinkphp/tpl/think_exception.tpl:399 Stack trace:

0 /app/cis-meiya/weixin/thinkphp/tpl/think_exception.tpl(399): think\Error::appError(8, 'Undefined index...', '/app/cis-meiya/...', 399, Array) 1 /app/cis-meiya/weixin/thinkphp/tpl/think_exception.tpl(90): parse_padding(Array) 2 /app/cis-meiya/weixin/thinkphp/library/think/Error.php(159): include('/app/cis-meiya/...') 3 /app/cis-meiya/weixin/thinkphp/library/think/Error.php(80): think\Error::output(Object(think\exception\ErrorException), Array) 4 /app/cis-meiya/weixin/thinkphp/library/think/Error.php(129): think\Error::appException(Object(think\exception\ErrorException)) 5 [internal function]: think\Error::appShutdown() 6 {main}

thrown in /app/cis-meiya/weixin/thinkphp/tpl/think_exception.tpl on line 399

nginx+php-fpm+php5.6 linux

5.4 5.5 测过没这个问题

回答

1

我用的就是5.6没问题.你是不是哪配置的问题呀.

5

我在centos 6 , 7 下都测过了 只有php5.6 下报错
thinkphp框架外 php程序不报错 我说的post 不是 html form post (Content-Type : application/x-www-form-urlencoded) 是直接发送字xml符串。 现在只能降级到5.5下用

php yum安装的 都是默认配置

NGINX

location / { index index.htm index.html index.php;

if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?s=$1 last; break; } }

location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }

3

@jfy3d 你确认php配置没有问题吗? 我看了一下代码和你的错误.message 'Undefined index: source'.说是没有source的key数据. 问题在于Error::getSourceCode($exception)获取不到错误.这样就会返回一个空数组.所以空数组里没有source的key. @liu21st

8

@momoca 配置都是默认的
只执行了 yum install php55w 或 php56w 5.5下就运行正常

image

4

这个问题 修正下异常模板就行了~

1

已经修正了