Written by Kasumi

【php】現在のディレクトリURLを取得し、条件分岐する方法

こんにちは、カスミです。

さて、以下のようなお悩みをお持ちでしょうか?

現在いるページのディレクトリを取得し、条件分岐して、htmlタグの表示を変えたい。

このような悩みを解決致します。

本記事では、PHPを使って現在いるページのディレクトリURLを取得し、条件分岐させる方法について解説します。

現在いるページのディレクトリURLを取得

<?php $pageDir = explode('/',$_SERVER["REQUEST_URI"]); ?>

上記コードで、現在いるページのディレクトリURLを取得しスラッシュ(/)区切りで配列に格納したものを$pageDir変数に格納します。

print_r()を使って、変数配列の中身を確認すると、現在いるページのディレクトリ階層事に要素が分けられている事がわかります。

たとえばhtttp://ドメイン/category/web/の階層にいるとすると、

  Array
(
    [0] => 
    [1] => category
    [2] => web
    [3] => 
)

上記のような配列が取得できます。

条件分岐させる

<?php if( $pageDir[1] == 'category' ): ?>
  <!-- $pageDir配列要素[1]にcategoryが入っていたら -->
  <p>categoryが入ってる</p>
<?php else: ?>
    <!-- $pageDir配列要素[1]にcategoryが入ってない場合 -->
  <p>categoryが入ってない</p>
<?php endif; ?>

上記が現在ページのディレクトリ取得から、条件分岐させるコード例です。

前章で取得したディレクトリの配列を元に、if文で配列番号を指定。

指定した配列番号の値と任意の文字列が合致する・しないで条件分岐してます。

以上で完了です。

まとめ

ヘッダーメニューなどで、現在いるページのメニュー項目をアンダーバーをつけるなどして装飾したい時に便利です。

以上で解説を終わります。

目次

関連記事

プログラミング

webフォント(google、adobe)の読み込み後にページを表示する方法

2023.11.18
743
WordPress プログラミング

ワードプレスのツールバー(アドミンバー)を表示・非表示にする方法

2020.05.29
922
HTMLCSS プログラミング

【簡単】CSSを使って要素を非表示にせず、要素内のテキストだけ見た目上消す方法

2022.01.19
9357
WordPress プログラミング

【簡単】Custom Post Type UI で カスタム投稿タイプのアーカイブページに親ページ(任意の固定ページ)を設定する方法

更新日:2022.04.13
7293