php Xiaobian Yuzai は今日、PHP を使用してモバイル デバイスを検出する方法を紹介します。モバイルデバイスの普及に伴い、Web サイトのレスポンシブデザインが特に重要になってきています。 PHP を介してユーザーが Web サイトにアクセスするために使用するデバイスの種類を検出することで、さまざまなデバイスにカスタマイズされたコンテンツとレイアウトを提供し、ユーザー エクスペリエンスを向上させることができます。この記事では、PHP を使用してユーザーのデバイスの種類を検出し、Web サイトをより適切にモバイルに適応させる方法を紹介します。
のクラスを使用してモバイル デバイスを検出するには、Mobile Detect## という名前のクラスを使用できます。 # PHP でモバイル デバイスを検出するための軽量 PHP クラス。タブレット端末も検出できます。このライブラリは、特定の
Httpヘッダーとユーザー エージェント文字列を使用してモバイル デバイスを検出します。次のコマンドを使用して、Composer を使用してライブラリをダウンロードできます。
composer require mobiledetect/mobiledetectlib
isMobile()、
isTablet()、
isiOS()# などのさまざまなメソッドを提供します。 # さまざまなモバイル環境を検出します。クラス Mobile_Detect()
のオブジェクトを作成し、これらのメソッドを使用できます。たとえば、上記のcomposerコマンドを使用して、ライブラリを
ディレクトリにダウンロードします。次に、require_once関数を使用して、ファイルautoload.php
が必要になります。このファイルはvendor
ディレクトリにあります。次に、クラスMobile_Detect()
$detect
のオブジェクトを作成します。次に、関数isMobile()
をif
条件で使用します。if
ブロックに「モバイル デバイス
が検出されました」というメッセージが表示され、else
ブロックに「モバイル デバイスが検出されませんでした」というメッセージが表示されます。
次の例では、Web ページがモバイル デバイスからアクセスされているかどうかを検出します。以下の出力セクションは、PC から Web ページを開いたときに何が起こるかを示しています。 Web ページを右クリックして、レスポンシブ
デザイン モード
モバイル デバイスが検出されましたに変わります。このようにして、Mobile Detectクラスを使用して、PHP でモバイル デバイスを検出できます。
サンプル コード:
require_once "vendor/autoload.php"; $detect = new Mobile_Detect; if ( $detect->isMobile() ) { echo "Mobile device detected"; } else { echo "Mobile device not detected"; } ?>
Mobile device not detected
PHP での
HTTP_USER_AGENT関数の使用モバイル デバイスの検出
文字列
HTTP_USER_AGENT$_SERVERスーパーグローバル変数と文字列を
array要素として使用します。スーパーグローバル変数には、
NetworkServerに関する情報が含まれています。モバイル デバイス上にあるユーザー エージェント文字列のカスタムコレクションを作成します。次に、preg_match()関数を使用して、これらが現在のユーザーが閲覧しているブラウザと一致するかどうかを確認できます。新しいサポート対象モバイル デバイスがリリースされると、ユーザー エージェント文字列のコレクションを手動で追加できます。ユーザー エージェント文字列コレクションの更新されたリストは、ここにあります。たとえば、変数
$user_agent
$_SERVER["HTTP_USER_AGENT"]を格納します。次に、
preg_match()関数を使用して、ユーザー エージェント文字列と一致させます。最初の引数として文字列のコレクションを使用します。
$user_agent変数を 2 番目のパラメーターとして使用します。最後に、
if-else条件を使用して、それに応じてメッセージを表示します。
ここでは、iPhone から Web ページを開きました。したがって、ユーザー エージェント文字列はセットと一致します。このようにして、PHP でモバイル デバイスを検出できます。
$user_agent = $_SERVER["HTTP_USER_AGENT"]; if(preg_match("/(Android|WEBos|avantGo|iphone|ipod|ipad|bolt|boost|cricket|docomo|fone|hiptop|opera mini|mini|kitkat|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i",$user_agent )) { echo "mobile device detected"; } else{ echo "mobile device not detected"; }
Mobile device detected
以上がPHP を使用してモバイル デバイスを検出するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。