我有這個代碼的第36行的問題。幫助與瀏覽器檢測代碼
<?PHP
class Browser
{
private $props = array("Version" => "0.0.0",
"Name" => "unknown",
"Agent" => "unknown") ;
public function __Construct()
{
$browsers = array("firefox", "msie", "opera", "chrome", "safari",
"mozilla", "seamonkey", "konqueror", "netscape",
"gecko", "navigator", "mosaic", "lynx", "amaya",
"omniweb", "avant", "camino", "flock", "aol");
$this->Agent = strtolower($_SERVER['HTTP_USER_AGENT']);
foreach($browsers as $browser)
{
if (preg_match("#($browser)[/ ]?([0-9.]*)#", $this->Agent, $match))
{
$this->Name = $match[1] ;
$this->Version = $match[2] ;
break ;
}
}
}
public function __Get($name)
{
if (!array_key_exists($name, $this->props))
{
die "No such property or function $name" ;
}
return $this->props[$name] ;
}
public function __Set($name, $val)
{
if (!array_key_exists($name, $this->props))
{
SimpleError("No such property or function.", "Failed to set $name", $this->props) ;
die ;
}
$this->props[$name] = $val ;
}
}
?>
這是有錯誤die "No such property or function $name" ;
任何幫助,將撥出的線。
我用:get_browser @ HTTP: //php.net/manual/en/function.get-browser.php –
我很好奇,錯誤是什麼? – ajreal
當沒有找到類的屬性並且沒有拋出異常時,你真的希望PHP腳本死掉嗎?爲什麼不創建公共屬性'Name'和'Version'? – CodeCaster