在PHP中做了一些更改,将变量声明为字符串,然后再将其用作数组是不可行的。我们升级到了bitnamies wamp stack,它破坏了我们的应用程序。变量之一
$change="";
然后使用
$change[$k] = "this";
它仍然是单个字符串,而不是变成数组。这是我可以更改的php.ini配置吗?
答案 0 :(得分:4)
从7.1开始,您描述的行为已更改。查看Assignment via string index access on an empty string
的更改日志在空字符串上按字符进行字符串修改现在类似于 非空字符串,即写入超出范围的偏移量填充 带空格的字符串,其中非整数类型会转换为整数, 并且仅使用分配的字符串的第一个字符。以前, 空字符串,它们像空数组一样被静默处理。
{
"message": "Internal server error"
}
PHP 7看到了许多改进,这些改进使“更严格”的键入成为可能,并允许更好的type hinting。但是,PHP仍然被认为是一种松散类型的语言。从7.0开始,一些示例包括Scalar type declarations,Return type declarations和strict_types
指令。