兼容 PHP 8.5:消除全部弃用调用
PHP 8.5 把 curl_close()/finfo_close() 这类"空操作函数"标为弃用, 并把预定义局部变量 http_response_header 标为弃用(编译期判定,@ 与三元短路都压不住)。 - 句柄关闭收进 fb_curl_close()/fb_finfo_close():仅 PHP < 8.0 真正调用, 新版本直接跳过(8.0 起句柄随引用计数释放),保留 7.4 兼容 - 响应头读取改用 http_get_last_response_headers()(8.4+); 老版本经 get_defined_vars() 从作用域变量表取,源码不再出现已弃用标识符 - 新 API 是全局状态,用「请求前基线」比对,避免把上一次的残留头当成本次结果 - 安装体检与 README 的推荐版本区间更新为 8.1~8.5 验证:PHP 8.5.12 下五套测试全绿(25/25、22/22、60/60、7/7、反向 4 组全被抓住), error_log 零条弃用记录;PHP 8.4.25 同样全绿。
This commit is contained in:
@@ -155,7 +155,7 @@ function fb_media_local_mime($path, $key) {
|
||||
$ct = '';
|
||||
if (function_exists('finfo_open')) {
|
||||
$fi = @finfo_open(FILEINFO_MIME_TYPE);
|
||||
if ($fi) { $ct = strtolower(trim((string)@finfo_file($fi, $path))); @finfo_close($fi); }
|
||||
if ($fi) { $ct = strtolower(trim((string)@finfo_file($fi, $path))); fb_finfo_close($fi); }
|
||||
}
|
||||
if ($ct === '' || $ct === 'application/octet-stream') {
|
||||
$ct = fb_upload_mime_of_ext(fb_upload_key_ext($key));
|
||||
|
||||
Reference in New Issue
Block a user