PHP中未定义的变量,我做错了什么?

时间:2012-03-30 05:29:52

标签: php

我一直在努力让这个PHP脚本工作,但我似乎无法让它工作。 :\

<?php function getBrowser() {
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
  $ub = '';
  if(preg_match('/MSIE/i',$u_agent)) {
    $ub = "Internet Explorer";
  }
  elseif(preg_match('/Firefox/i',$u_agent)) {
    $ub = "Mozilla Firefox";
  }
  elseif(preg_match('/Safari/i',$u_agent)) {
    $ub = "Apple Safari";
  }
  elseif(preg_match('/Chrome/i',$u_agent)) {
    $ub = "Google Chrome";
  }
  elseif(preg_match('/Opera/i',$u_agent)) {
    $ub = "Opera";
  }
  elseif(preg_match('/Netscape/i',$u_agent)) {
    $ub = "Netscape";
  }
  return $ub;
}
echo $ub;
?>

我只是想让PHP正确检测浏览器,但我总是在“echo $ ub;”

中得到“Undefined Variable:ub”

这次我做错了什么?

1 个答案:

答案 0 :(得分:7)

$ub在函数中定义,然后返回。要获得$ub的值,您需要调用函数:

echo getBrowser();