问题标签 [e-notices]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
129 浏览

php - PHP - 如何在启用 E_NOTICES 的情况下编写更好的代码?

我更喜欢在打开 E_NOTICES 的情况下进行开发,但在使用数组索引时,我经常不得不编写过多、过于冗长的代码。如何在启用 E_NOTICES 的情况下用更少的代码编写此代码。

通知被禁止

没有通知被压制

0 投票
3 回答
3993 浏览

zend-framework - 在 zend 框架中设置自定义错误级别

如何使用 Zend Framework 设置自定义错误级别 - 比如说,我想禁用 E_NOTICE。

谢谢。

0 投票
4 回答
2658 浏览

php - php 数组的未定义索引:0 通知消失

是的,所以我打开了 E_NOTICES 并且我的代码正常工作,每次我尝试使用 set 键将数据插入数组时,我都会不断收到“严重性:通知消息:未定义的索引:0”。当您尝试调试时,它真的很烦人。

我做错了什么会使通知消失而不关闭 E_NOTICES?

0 投票
4 回答
10078 浏览

php - APC(备用 PHP 缓存)抛出大量 PHP 通知

我在运行 PHP 5.3.6 的 Linux 机器上安装了 APC 3.1.9。

缓存工作正常,但我在我们的错误日志中注意到,APC 会引发很多 PHP 通知,例如:

[Wed Jun 29 01:08:56 2011] [error] [client ip] PHP Notice: require_once() [function.require-once]: apc_cache_find [16085954]\n in /path/to/file on line 75, referer : /path/to/referer/file

[Wed Jun 29 01:08:56 2011] [error] [client ip] PHP Notice: require_once() [function.require-once]: 1. h->opened_pa​​th=[/path/to/file] h-> filename=[/path/to/file]\n 在第 84 行的 /path/to/file 中,引用者:/path/to/referer/file

[Wed Jun 29 01:08:56 2011] [error] [client ip] PHP Notice: Unknown: apc_cache_find [16215361]\n 在 Unknown on line 0, referer: /path/to/referer/file

--> /path/to/file & /path/to/referer/file 已被我插入替换原始文件名

知道为什么 APC 会抛出所有这些消息吗?

0 投票
2 回答
114 浏览

php - PHP 通知抑制;只有某些情况/方法

tl;dr - 在非常严格的环境中工作时,是否有一种有效的方法来管理 PHP 的错误报告级别,因为在不那么严格的级别下某些过程会变得更容易?

好的; 首先,我不相信“错误抑制”是一种解决方案。我(有理由确定我)从未使用过@错误抑制运算符,也无意这样做。我利用set_error_handler()and ErrorException或某些派生) 并且我在error_reporting(-1)未来证明E_ALL | E_STRICT)中开发

现在,我不想改变这些习惯,因为我发现它们是一个很好的实践(另外;如果有人有进一步改进我的开发/生产环境设置/实践的建议,我会全力以赴

但是,当涉及到视图生成时,这可能会有点乏味。正确的数据(数组索引、变量等)并不总是可用的,因为控制器无论出于何种原因未能将某些数据传递给视图。只要此数据对视图生成不重要,视图仍应呈现。

我更喜欢这种语法,因为它并不冗长,但(我认为)非常容易理解:

当然,如果$data['field']没有在没有索引的情况下调用offsetGet()返回null,我们就有问题了。通知遇到异常,异常遇到脚本失败。

我尝试了不同的实现,包括使用类似节点的类创建数据树来管理传递给视图的数据列表/行。__get()实际上会创建不存在的节点(在分配或访问时)(以简化节点数据分配,并防止发出通知。__isset()测试有效性并会false适当返回)它还实现ArrayAccess了访问节点数据,并且只需返回null缺失的索引。

由于 PHP 魔法的开销,我选择放弃这个实现(尽管我学到了很多关于重构/优化和分析的知识)

我改用了原生数组,但现在我的视图代码库里到处都是isset(),坦率地说,这很烦人(几乎超过了上述实现的性能损失

现在,我认为最简单的解决方法是error_reporting()根据我们在脚本中的位置上下滑动缺口:

但这似乎不是最干净(也不是最安全)的解决方法;尤其是在视图中调用辅助函数时。我已经采用了一种 HMVC 方法,并且可以从视图发出子请求,所以我需要找到所有的render()逃生点并用error_reporting(-1).

我还有其他选择吗?

0 投票
3 回答
8315 浏览

php - 记录 PHP 通知错误

我最近接管了遗留系统的开发,并希望能够E_NOTICE在部署环境中打开 PHP 的日志记录。部署环境 ini 具有以下指令...

error_reporting使用 , 比较了位掩码echo (E_ALL & ~E_DEPRECATED).' = '.error_reporting();,两者都匹配,所以我知道error_reporting系统本身的级别没有改变,如果我打开display_errors = On通知,则会显示,但不会记录。

那么如何开始记录 PHPE_NOTICE呢?

0 投票
4 回答
153630 浏览

php - 未定义变量:$_SESSION

E_NOTICE当核心 CakePHP 文件尝试引用从未设置或未设置的会话 ( ) 时,我在该文件中遇到错误cake/libs/cake_session.php line 372

我已经通过我的代码(在 app/ 目录中)进行了搜索,但我找不到对$_SESSIONor的引用session_destroy。我错过了什么吗?

当我尝试运行任何单元测试时会出现此错误。这……正常吗?我已清除cake/目录并将其替换为另一个(相同版本),以确保我没有无意中修改核心文件中的任何内容,但我仍然遇到相同的错误。我不确定这是否只是框架中的缺陷还是其他原因。

编辑

以下是在命令行上运行的测试结果:

0 投票
1 回答
12659 浏览

php - 如何摆脱 PHP 注意:未定义索引:第 123 行 X 中的 HTTPS

我刚刚发现我有数千个这样的错误,来自两个相同的文件。

我通过使用 删除了很多错误isset,但我不知道如何删除最后两个错误。也许你们可以帮助我。

生成错误的第一个 PHP 文件中的代码:

更确切地说,这一行:

0 投票
2 回答
1057 浏览

php - 数组中未定义的变量没有 E_NOTICE?

所以..我仍然对此感到困惑,当创建一个数组$array = array();然后手动设置变量时:

我知道,这对 PHP 来说是可以的,但是当我回显类似的东西时,$array['none']它不会为未定义的变量显示 E_NOTICE。

谁能解释一下,为什么?

0 投票
1 回答
168 浏览

php - 如何在不引发 PHP 通知/警告的情况下循环遍历 stdObject 的数组?

我通过 cURL / json_decode() 获得了以下 stdObject:

我正在遍历它以获得每个结果的 ID:

尽管代码运行良好,但 PHP 正在发出以下通知/警告:

PHP 注意:试图在第 1 行的 /var/www/vhosts/domain.net/script.php 中获取非对象的属性 PHP 注意:试图在 /var/www/vhosts/domain 中获取非对象的属性。第 1 行的 net/script.php PHP 警告:在第 1 行的 /var/www/vhosts/domain.net/script.php 中为 foreach() 提供的参数无效

有任何想法吗?提前致谢!