版本 4.3.4
发布日期:2023 年 4 月 27 日
CodeIgniter 4.3.4 版发布
不兼容变更
行为变化
重定向状态码
由于一个错误,在以前的版本中,当使用 HTTP/1.1 或更高版本时,即使指定了状态码,实际重定向响应的状态码也可能会改变。例如,对于 GET 请求,302 会更改为 307;对于 POST 请求,307 和 302 会更改为 303。
从这个版本开始,如果在 redirect 中指定了状态码,该代码将始终在响应中使用。
当使用 HTTP/1.1 或更高版本时,GET 请求的默认代码已更正为 302。
当使用 HTTP/1.1 或更高版本时,HEAD 和 OPTIONS 请求的默认代码已更正为 307。
在
$routes->addRedirect()
中,默认指定 302。因此,当你不指定状态码时,总是会使用 302。在以前的版本中,302 可能会更改。
Forge::modifyColumn()
$forge->modifyColumn() 已修复。 由于一个错误,在以前的版本中,SQLite3/Postgres/SQLSRV 可能会不可预测地更改
NULL
/NOT NULL
。在以前的版本中,当你不指定
null
键时,OCI8 驱动程序不会更改NULL
/NOT NULL
。现在在所有数据库驱动程序中,如果你不指定
null
键,$forge->modifyColumn()
始终设置为NULL
。NULL
/NOT NULL
的更改可能仍然出人意料,建议总是指定null
键。
弃用功能
文本辅助函数:
random_string()
的类型basic
、md5
和sha1
已弃用。它们不是加密安全的。
错误修复
CURLRequest: 修复了一个错误,其中响应类在请求之间共享。
有关完整的错误修复列表,请参阅仓库的 CHANGELOG.md。