0

これが私のコードです...

if($_SERVER['REQUEST_URI'] == '/shop/category/handheld-thermal-imaging/')
{
echo
'<div class="current-mark"></div><div class="top-level"><a href="/shop/category/handheld-thermal-imaging/">HANDHELD<br />THERMAL IMAGING</a></div>';
} 

else if($_SERVER['REQUEST_URI'] == '/shop/category/mobile-imaging/')
{
echo
'<div class="current-mark"></div><div class="top-level"><a href="/shop/category/mobile-imaging/">MOBILE IMAGING</a></div>';
}

基本的に、このコードは、サイト内のどのページにいるかに応じて、異なる左側のサイト ナビゲーションを表示します。PHP REQUEST_URI 機能を使用して、ページの URL から現在のページを検出します。

私の質問はこれです。コードで同じナビゲーション ピースに対して複数の URL を検出するにはどうすればよいですか?

私はこのコードを試しました...

if($_SERVER['REQUEST_URI'] == '/shop/category/handheld-thermal-imaging/' , '/shop/iphone-thermal-imaging-adapter/')
{

しかし、そのコードは機能していないようです。基本的に、ここで理解しようとしているのは、REQUEST_URI の「if」ステートメントに複数の URL を使用する方法です。前もって感謝します!

4

4 に答える 4

2

URL を配列に入れてから... if(in_array($_SERVER['REQUEST_URI'],$array))

于 2012-05-11T14:44:03.730 に答える
1

switchあなたは...よりきちんとしていて、このオプションを提供するステートメントに切り替える必要があります:

switch($_SERVER['REQUEST_URI']) {
    case '/shop/category/handheld-thermal-imaging/':
        // THERE IS NO CODE AT ALL HERE!
        // The absence of a "break;" causes control to "fall through" to the next
    case '/shop/iphone-thermal-imaging-adapter/':
        echo "something common for the thermal imaging urls";
        break;
    case 'some other url':
        echo "something for the url that stands alone";
        break;
}
于 2012-05-11T14:40:54.770 に答える
0

条件文で「OR」ステートメントを使用できます。

if($_SERVER['REQUEST_URI'] == "whatever" || $_SERVER['REQUEST_URI'] == 'something else")
{

}
于 2012-05-11T14:40:56.777 に答える