プログラミング

【2019年版PHP】PCとスマホで処理を分ける方法【コピペOK】

驚く猫

こんにちは、WEBエンジニアのきりん(@kikiki_kirin)です。

WEB開発をしていて「スマホの時だけここのHTML要素出したいな・・・」という状況がよくあると思います。

そんな時に使えるコードを書いておきますので、参考にしてください。

そのままでも使える状態にはなっていますので、コピペOKです。

この記事の内容

PHPでPC・スマホの処理を分ける方法

PHPでPC・スマホの処理を分けるコード

最初にこちらのコードで関数を定義すれば準備OKです。


/**
* UA取得
* @return string
*/
function getUserAgent()
{

$userAgent = isset($_SERVER['HTTP_USER_AGENT'])? $_SERVER['HTTP_USER_AGENT'] : '';

return $userAgent;
}
/**
* スマホかどうか判定
* @return bool
*/
function isSmartPhone()
{


$ua = getuserAgent();

if (stripos($ua, 'iphone') !== false || // iphone
stripos($ua, 'ipod') !== false || // ipod
(stripos($ua, 'android') !== false && stripos($ua, 'mobile') !== false) || // android
(stripos($ua, 'windows') !== false && stripos($ua, 'mobile') !== false) || // windows phone
(stripos($ua, 'firefox') !== false && stripos($ua, 'mobile') !== false) || // firefox phone
(stripos($ua, 'bb10') !== false && stripos($ua, 'mobile') !== false) || // blackberry 10
(stripos($ua, 'blackberry') !== false) // blackberry
) {
$isSmartPhone = true;
} else {
$isSmartPhone = false;
}

return $isSmartPhone;
}

コードの使い方

実際に使う場合はこんな感じになります。



if (isSmartPhone()) {
 //スマホの場合の処理
} else {
 //それ以外の場合の処理
}

HTMLのなかで使いたいときはこうです。



<?php if (isSmartPhone()): ?>

<p>スマホで閲覧中</p>

<?php else: ?>

<p>PCで閲覧中</p>

<?php endif; ?>

以上です。

もし何かわからないことがあればツイッターでDMいただければお答えできるかと思います!(@kikiki_kirin)

それでは、良いプログラミングライフを!

プロのエンジニアがすすめるプログラミングスクールは4社だけ【無料あり】「プログラミングを学んでみたいからスクールに行きたいけど数が多すぎてどこに決めれば良いかわからない・・・」 という疑問にお答えして...
ABOUT ME
Avatar
きりん
『好きなだけ漫画を語る。』そう思い立ち『きり漫』を立ち上げました。内容は大好きな漫画やアニメ・海外ドラマのこと。プログラミングもします。 私の発信する情報が皆さんのためになる事を願って記事を書いています。
漫画村の代わりに無料で漫画が読める?

 

漫画アプリを使っていて「マイナー作品しかないし、少しずつしか読めない」と不満を感じたことはありませんか?

待つことなく無料で人気の漫画や話題の人気作を無料で読むことができるサイトをご紹介しています。損はさせません。是非ご一読ください。

無料で漫画が読めるサイト一覧