get_browser在PHP中不使用IF语句

时间:2014-03-12 14:43:07

标签: javascript php html5 if-statement

我的网站使用HTML5标准化中的新API GetUserMedia()。目前Chrome和Firefox支持此API,目前我只想在用户使用Chrome或Firefox时使用此API。

下面的代码演示了这个API,效果很好。然而问题是我的if语句不起作用,当我使用Safari访问网站时,它仍然尝试激活API,实际上它应该只使用后退<input type="file" capture="camera" accept="image/*" id="cameraInput" name="cameraInput">

我做错了什么?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
$browser = get_browser(null, true);
echo $browser["browser"]; //to see which browser name is detected

if ($browser["browser"] = "Chrome" || $browser["browser"] = "Firefox"){
    echo '<script type="application/javascript" src="scripts/webcam.js" charset="utf-8"></script>';
    echo '<video id="video" width="300" height="300" autoplay></video><br>';
    echo '<button id="snap">Capture</button><br>';
    echo '<button id="upload">Upload</button><br>';
    echo '<canvas id="canvas" width="200" height="150"></canvas>';

}
if ($browser["browser"] = "Safari" || $browser["browser"] = "IE"){
    echo '<input type="file" capture="camera" accept="image/*" id="cameraInput" name="cameraInput">';
}
?>
</body>
</html>

1 个答案:

答案 0 :(得分:4)

=不是比较,而是赋值运算符。

应该是

if ($browser["browser"] == "Chrome"

而不是

if ($browser["browser"] = "Chrome"

找到该功能而非浏览器是一种很好的做法。