PHP5.0 的框架,项目在生产环境 用 ng 部署 同样的代码没有报错,dump($get['type']); 输出了 null 但是我本地环境 就直接抛异常了。 有没有 PHP 的朋友帮忙看看。。
1 wmm221166 2023-09-08 15:18:24 +08:00 一个 dump($get) 一个 dump($get['type']), 然后 $get 是个 int |
2 GodlikeKarl 2023-09-08 15:19:50 +08:00 你把$get 数组整个打印出来看有没有'type'对应的元素 |
3 abcdexx 2023-09-08 15:23:22 +08:00 $get 是个 int 你也把它当数组使用? 你本地和生产环境 php 版本不一样吧? 要先判断 is_array($get)。 |
4 token10086 2023-09-08 15:26:31 +08:00 ![]() |
6 houOne OP 生产本地 php7.4 生产应该是 7.2 |
![]() | 7 garlics 2023-09-08 1:31:31 +08:00 版本问题,线上估计是 5.几的版本,本地估计是 7+的版本。如果版本一样就是错误提示等级不同,需要改配置文件。 |
8 houOne OP |
![]() | 9 zjsxwc 2023-09-08 15:37:21 +08:00 盲猜是 php5 碰到 $arr["non-exist-key"] 会返回 null 值,而 php7 碰到这种情况是抛异常。 |
10 houOne OP 我是 java 程序员,看到这个诡异的 情况 想请教一下,是不是什么设置让 生产 不抛异常的。 |
12 houOne OP 下了好几个 PHP 版本 试了一下,php7.2 可以了。谢谢各位的热心 [抱拳] |
13 houOne OP @token10086 #4 请问 PHP 如何像 java 一样 在 IDEA 里面 断点 调试呀? 是使用 PHP xdebug 插件吗? |
14 shiroyuri 2023-09-08 16:22:13 +08:00 PHPStorm 配置 Xedug 插件 |
![]() | 15 hello321 2023-09-08 17:10:31 +08:00 php7.4 需要 $get['type'] ?? null |
16 dilu 2023-09-08 17:53:30 +08:00 线上环境肯定是关掉报错提示了,php.ini 有个 error_reporting 可以控制报什么级别的错误,一般生成环境是全部关掉,开发环境是 warn 起步。 |
17 Rache1 2023-09-08 18:48:54 +08:00 |
![]() | 18 x86 2023-09-08 18:54:11 +08:00 thinkphp 本身就可以配置关闭不抛出异常的呀 |
19 dongtingyue 2023-09-08 19:05:22 +08:00 php 环境改成一样的,要不然会有问题测不出来。 |
20 GodlikeKarl 2023-09-08 21:00:26 +08:00 可能你的参数有问题,比如要传的 map ,结果传了一个 int 数字 |
21 1wlinesperday 2023-09-08 22:48:00 +08:00 借楼问一下,帮忙部署一个 PHP 项目多少钱啊 https://secure.phabricator.com/book/phabricator/article/installation_guide/ |
![]() | 22 taozywu 2023-09-08 22:58:41 +08:00 @1wlinesperday 可以私聊下 vx:dGFvenl3dQ== |
23 dayeye2006199 2023-09-08 23:07:42 +08:00 via Android 朋友 docker 了解一下 |
![]() | 24 yogogo 2023-09-09 00:11:33 +08:00 via Android 服务器没有开启异常 |
![]() | 25 wellerman 2023-09-09 00:27:52 +08:00 @godloveplay #5 结合顶上两张图片,这代码在本地也不会有预期的结果。$get 本来要接受一个数组,你给传了整数 1127 ($supplier_id ) 当然报错。生产环境之所以没报错,是因为生产环境关闭了错误显示。打开错误显示,肯定一样的错误。 另,#3 楼也已经指出错误原因。 显示全部错误: ini_set('display_errors', true); error_reporting(E_ALL); |
![]() | 26 qsnow6 2023-09-09 00:31:56 +08:00 docker 可以抹平所有环境的差异 |
![]() | 27 ganbuliao 2023-09-09 10:46:22 +08:00 打印一下生产环境的 php ini 和本地环境的 |