Url ek metin Algılama

3 Cevap

Sayfa "biz-los-angeles.php" gösterisi özel html ise php durum temelde statik var. Ben örnek için başka bir koşul "perakende-biz-los-angeles.php" eklemek istiyorum. Bu ne için en kolay yol olacaktır. Temelde ben sadece komut için url başında "perakende" metni almak ve belirli html dönmek istiyorum. Aşağıda bunun kodu ama her şehir üzerine gitmek için çok hantal olurdu.

<?php
$currentpage = basename($_SERVER['SCRIPTNAME']);

if ($currentpage == 'retail-biz-los-angeles.php')
    echo 'HTML ';
else if ($currentpage == 'biz-los-angeles.php')
    echo 'HTML';
?>

3 Cevap

Böyle bir şey kontrol edebilirsiniz:

if (strpos($currentpage, 'retail-') === 0))
    ...

Sunucunuza da mod_rewrite kullanarak düşünebilirsiniz ne / CMS / bağlı.

RewriteRule ^retail-(.*)$ $1?retail=1 [L,QSA]

Bu perakende sayfalarınızda $_GET['retail'] == 1 verecek.

Eğer bir anahtar açıklama yaparak daha güçlü yapabilir. Ben kodu test değil, ancak aşağıdaki gibi bir şey daha kolay korumak için yapmak istiyorum.

    $currentpage = basename($_SERVER['SCRIPTNAME']);
    $pageParts =  explode('-',$current_page);
    $section = $pageParts[0]; 

    switch($section){
    	case 'biz':
    		echo 'BIZ';
    		break;
    	case 'retail':
    		echo 'Retail';
    		break;
    	default:
    		echo 'catchall';
    		break;
    }

i yeniden mod kullanmak istiyorum ....

$currentpage = basename($_SERVER['SCRIPTNAME']);
$pagetags=explode('-',$currentpage);
if(array_search("retail",$pagetags)!==FALSE){
echo "HTML";
}