PHP Basit değişiklik / düzeltme

1 Cevap php

Bu kırıntı önce iki bölücüler yankıları çünkü o birinden bu kod dinamik bir kırıntı oluşturmak için neredeyse mükemmel, ama orada sadece küçük bir aksaklık var:

$crumbs = explode("/",$_SERVER["REQUEST_URI"]);
foreach($crumbs as $crumb){
    echo ucfirst(str_replace(array(".php","_"),array(""," "),'>' . $crumb));
}

bunun yankıları:

">> İçerik> ortak> dosyası"

Ben gibi görünmesini istiyorum ne

"İçerik> ortak> 1"

Birisi nasıl sonuncusu (dosya) hariç dizideki tüm öğeler için linkler ekleyebilirsiniz bana söyleyebilir ve aynı zamanda derinden takdir edecektir?

Bu web sitesi gerçekten örneklerle php öğrenmek için bana çok yardımcı oldu, o kadar çok herkese teşekkür!

1 Cevap

Belki böyle bir şey yapacağım:

//get rid of empty parts $crumbs = array_filter($crumbs);

$result = array();
$path = '';
foreach($crumbs as $crumb){
    $path .= '/' . $crumb;
    $name = ucfirst(str_replace(array(".php","_"),array(""," "), $crumb));
    $result[] = "<a href=\"$path\">$name</a>";

}

echo implode(' > ', $result);

Updated

$result = array();
$path = '';
$num = count($crumbs);
for ($j=0; $j<$num; $j++) {
    $crumb = $crumbs[$j];
    if ($crumb == '') {
        continue;   
    }
    $path .= '/' . $crumb;
    $name = ucfirst(str_replace(array(".php","_"),array(""," "), $crumb));
    if ($j < ($num - 1)) {
        $result[] = "<a href=\"$path\">$name</a>";
    } else {
        $result[] = $name;
    }
}

echo implode(' > ', $result);