You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决代码中Undefined array key "HTTP_USER_AGENT"警告问题

解决Undefined array key "HTTP_USER_AGENT"警告的方案

问题根源

$_SERVER['HTTP_USER_AGENT']并非所有HTTP请求都会携带的头部信息——比如部分爬虫、API调用或特殊客户端请求可能不会发送User-Agent,直接访问这个未定义的数组键就会触发PHP警告。

修复代码

针对你代码中的问题行,有两种可靠的修复方式:

方式1:先检查键是否存在再使用

修改判断条件,先确认$_SERVER['HTTP_USER_AGENT']存在,再进行字符串检测:

if ( ( !isset($_SERVER['HTTP_USER_AGENT']) || strstr( $_SERVER['HTTP_USER_AGENT'], 'MSIE' ) == false ) && ( $use_object_frame == true ) ) {

方式2:使用null合并运算符预设默认值

先给User-Agent设置空字符串默认值,避免直接访问未定义的键:

// 在判断前添加这行
$user_agent = $_SERVER['HTTP_USER_AGENT'] ?? '';
// 修改判断条件
if ( ( strstr( $user_agent, 'MSIE' ) == false ) && ( $use_object_frame == true ) ) {

额外注意点

你的代码中$use_object_frame被默认赋值为false,所以当前这个判断条件永远不会成立,object标签部分的代码永远不会执行。如果这不是预期行为,需要检查$use_object_frame的赋值逻辑是否有误。

内容的提问来源于stack exchange,提问作者user21167050

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 23:00:25