![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
正規表現を使い、URLで条件分岐したいのですが、
うまくいかないので、教えてください。
<やりたいこと>
http://ドメイン/page1.html
http://ドメイン/page2.html
:
のページの時のみ、
という条件分岐をしたい。
<現状>
if($_SERVER['REQUEST_URI']=="/page1.html"){
とするとうまくいくのですが、
これを任意のpage○で対応したい
$_SERVER['REQUEST_URI']=="^/page*.html$"){
としたけど、ダメでした。
どう書けば、よいでしょうか?
No.1ベストアンサー
- 回答日時:
まず、 == は完全一致であって、正規表現とのマッチングではない。
$_SERVER['REQUEST_URI'] =="^/page*.html$" は 「$_SERVER['REQUEST_URI']が"^/page*.html$"という文字列と等しい」という意味になる、というのが一点。
preg_match関数等の正規表現用の関数を使う。
もう一点は、正規表現が目的のものと一致していない。
*は「直前の表現の0回以上の繰り返し」
.は「任意の一文字」
という意味がある。なので、この表現だと
先頭 / p a g eの0回以上の繰り返し 任意の一文字 h t m l 最後
という文字列と一致する。
一つ以上の数字なら [0-9]+
.の特殊な意味を無効にするなら \. とエスケープする。
また、preg_*を使うなら、表現の前後にデリミタが必要。
以上をまとめると
if ( preg_match( '#^/page[0-9]+\.html$#', $_SERVER['REQUEST_URI'] ) {
より詳細はマニュアル
http://jp2.php.net/manual/ja/book.pcre.php
や各解説書、解説サイト等を参考に。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- サーバー 301リダイレクトができる条件を知りたいです 2 2022/10/25 11:21
- SEO googleサーチコンソールで、重複URLが多数発生、その修正方法について 2 2023/06/23 16:15
- C言語・C++・C# c言語 1 2022/11/09 13:05
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- 工学 ちなみになぜv=(v・e1)e1+(v・e2)e2はe1やe2が、正規直交基底でないと成り立たないと 2 2022/12/22 17:22
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- PHP PHP ページング データベース 1 2022/06/16 10:30
- C言語・C++・C# C言語 3 2022/11/09 13:27
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コードがそのまま表示される
-
PHPを使ったHPの<HEAD>
-
PHPとshtmlのhtml化共存方法を...
-
携帯でhtmlが見えない
-
これを作成するにはPHP?CGI...
-
onedrive にexcelファイルをア...
-
別ファイルの変数を呼び出した...
-
PHPのif文でその処理を途中で抜...
-
フォントの色を変えるには?
-
.phpと.incファイルの違いはな...
-
「@$変数」の「@の意味は?」
-
【file_exists】ファイルが存在...
-
$_SESSION 有効期限をブラウザ...
-
stat failed
-
2つの画像ファイルが異なるファ...
-
PHPで新しいウインドウで開く命...
-
CFileDialogの最初のディレクト...
-
【PHP】画像が表示されず「×」...
-
Subversionのリポジトリの削除
-
別PHPファイルに変数を渡す
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
centos6のlogにscript not foun...
-
正規表現を使い、URLで条件分岐...
-
「旭日中綬賞 」とはどんな賞で...
-
inet コントロールを用いてHTML...
-
htmlの書き換え
-
文字化けで混乱中です...
-
階層が違う場合の絶対パス相対...
-
厚い本を開きっぱなしにしてお...
-
数値から文字列へ変換後の先頭...
-
九州各地の美味しいものをお取...
-
htmlをphpにするにあたってデメ...
-
これを作成するにはPHP?CGI...
-
ASPソースコードをPHPソースコ...
-
PHPで作るフレーム、どんな風に...
-
php セレクトボックス 分岐 ...
-
phpの階層が変わると上手く読み...
-
mod_rewriteでQUERYパラメータ...
-
拡張子htmlでphpが動作するフォ...
-
青森県産のカルヴァドス
-
PHPの includeについて?
おすすめ情報