未定义索引包括
问题描述:
我收到以下错误说明:未定义指数:HTTP_USER_AGENT在包括()但我没有定义HTTP_USER_AGENT
未定义索引包括
function get_browser_name($user_agent)
{
if (strpos($user_agent, 'Opera') || strpos($user_agent, 'OPR/')) return 'Opera';
elseif (strpos($user_agent, 'Edge')) return 'Edge';
elseif (strpos($user_agent, 'Chrome')) return 'Chrome';
elseif (strpos($user_agent, 'Safari')) return 'Safari';
elseif (strpos($user_agent, 'Firefox')) return 'Firefox';
elseif (strpos($user_agent, 'MSIE') || strpos($user_agent, 'Trident/7')) return 'Explorer';
return 'Other';
}
错误是在这条线:
<body class="<?php echo get_browser_name($_SERVER['HTTP_USER_AGENT']);?>" <?php print $attributes;?> <?php print $classes; ?>>
答
参考http://php.net/manual/en/function.get-browser.php#101125
function get_browser_name($user_agent)
{
if (strpos($user_agent, 'Opera') || strpos($user_agent, 'OPR/')) return 'Opera';
elseif (strpos($user_agent, 'Edge')) return 'Edge';
elseif (strpos($user_agent, 'Chrome')) return 'Chrome';
elseif (strpos($user_agent, 'Safari')) return 'Safari';
elseif (strpos($user_agent, 'Firefox')) return 'Firefox';
elseif (strpos($user_agent, 'MSIE') || strpos($user_agent, 'Trident/7')) return 'Internet Explorer';
return 'Other';
}
// Usage:
echo get_browser_name($_SERVER['HTTP_USER_AGENT']);
+1
答**好的答案**将始终解释已完成的工作以及为什么这样做, 不仅适用于OP,而且适用于SO的未来访问者,可能会发现此问题并正在阅读您的答案。甚至可以upvote它,如果它解决了问题 – RiggsFolly
+0
现在其链接只回答 – RiggsFolly
代码工程何时不作为包含?标题可能未设置。 – chris85
但是您正在传递'$ _SERVER ['HTTP_USER_AGENT']' – RiggsFolly
也许如果您向我们显示了COMPLETE错误消息,并根据您向我们显示的代码标识了错误消息的行号,我们可以帮助 – RiggsFolly