在未初始化的变量上使用。=运算符的安全性如何?

奥尔加·法伯(Olga Farber)

我使用了一些高级插件,并分析了我发现的代码,在某些函数中,他们使用了以下代码:

$output .= $some_str;

当以前没有提到$ output时。

此代码的安全性如何?我试图在PHP手册中找到有关此内容的任何指导,但是对于我所看到的,他们只为之前设置的$ output和$ some_str定义了它。

稍后,此$ output变量用于回显HTML代码。

您看到有关这方面的规格了吗?也许我可以在那些插件之外做一些事情来使这段代码更安全?为所有未初始化的变量定义一些默认值?

谢谢!

朱莉·佩迪耶

这是一种不好的做法,这就是为什么PHP将发出E_NOTICE(如果启用错误报告)的原因。

也就是说,PHP变量始终会自动初始化,因此不会产生任何负面影响。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 C 中使用未初始化的变量应用 XOR 运算符

如何故意使用未初始化的数据初始化变量,以便valgrind将变量视为未初始化?

未初始化变量与类型安全性之间的联系

如何检测在JavaScript中使用in运算符是否安全?

如何使用尚未初始化的变量

如何重载 [] 运算符以初始化对象

C 编译器如何处理使用未初始化的变量?

如何为类的内置类型成员变量获取/实现“未初始化的使用警告”消息?

如何忽略MSVC中未初始化的变量错误

使用逗号运算符初始化基类

使用is运算符的变量初始化在使用相同的变量名称时给出错误

重载>>运算符,并使用自定义类型的初始化列表初始化

如何使用新运算符在表达式中聚合初始化STL容器?

由于没有使用赋值运算符,map 的值是如何初始化的?

如何在C ++中使用new运算符初始化内存?

如何使用 DOT 运算符初始化结构类型的数组

如何在 Rust 代码中使用延迟初始化并通过编译器“可能未初始化的变量”规则?

如何使运算符变量?

Clang和GCC在与转换运算符直接初始化的合法性上存在分歧

如何初始化变量

逗号作为变量初始化中的分隔符(不作为运算符)

无法在tensorflow中使用占位符初始化变量

如何使用NULL初始化结构指针变量?

如何使用tidyselect助手来初始化变量?

如何使用清理属性初始化变量?

如何使用和初始化变量haskell

如何使用Visual Studio CppUnitTestFramework初始化测试变量

如何使用JavaScript变量初始化Vue属性

如何使用共享的init方法初始化let变量?