-2

「古いブラウザ」のリストをまとめました。HTTP_USER_AGENTにあるかどうかを確認するために、それぞれをチェックしています。私の結果は、false の場合でも配列に true として格納され続けます。

true または false テストの結果を配列に保存し始めたときに、問題が発生しました。これは、問題がそこにあると私に思わせます。

$result をエコーすると、すべての場合で 1 になります。そうでない場合はゼロになると思います。

コードは以下のとおりです (この例では、ブラウザーが IE か Safari かを確認するためだけにリストを切り詰めました)。

<?php
function checkIfThisIsAnOldBrowser()
{
$userBrowserInfo = $_SERVER["HTTP_USER_AGENT"];

/**********Unsupported Browsers List****************************/
// Internet Exlporer
$oldBrowserCheck['MSIE']=strpos($userBrowserInfo, 'MSIE') ? true : false;//All Internet Explorer

// Safari
$oldBrowserCheck['safari']=strpos($userBrowserInfo, 'Safari') ? true : false;// All Safari
//END OF LIST

foreach($oldBrowserCheck as $browserName=>$result)
  {
    if($result=1){echo "<div class=\"oldBrowserWarning\"><h1>OLD BROWSER DETECTED: $browserName $result</h1></div>";}
  }

}//end of function
checkIfThisIsAnOldBrowser();
?>

ご覧いただきありがとうございます。

4

1 に答える 1

3
if($result=1)

する必要があります

if ($result == 1)

また

if ($result == true)

または単に

if ($result)
于 2013-06-11T22:17:10.550 に答える