-1

CakePHP のビルトイン メソッド$this->RequestHandler->isMobile()を使用してモバイル デバイスを検出しましたが、デスクトップ ブラウザーを使用してアプリを試したいときに機能しませんでした。URL が「m」で始まるので、次のコードを使用します。たとえば、「m.mywebsite.com」:

    <?php
    $url = explode('.', $_SERVER['SERVER_NAME']);
    if($url[0] == 'm'){
      echo "Welcome to our mobile version";
     }
    ?>

しかし、どういうわけか、「m.trial.mywebsite2.com」のようなサブドメイン アドレスを持つ別のサーバーでテストしても機能しませんでした。この種の Web アドレスを検出するための、他に優れたコードはありますか?

4

1 に答える 1

2

正規表現を使用するか、単にstrpos()を使用します。

// Regular Expression
if (preg_match('/^m\./', $_SERVER['SERVER_NAME']) {
}

// strpos()
if (0 === strpos($_SERVER['SERVER_NAME'], 'm.')) {
}

あなたの状況は何かがおかしいように聞こえ$_SERVER['SERVER_NAME']ます、あなたは本当にそれをチェックするべきです。

于 2012-11-02T04:21:40.980 に答える