スクリプトが適切なページとサブページで自分自身を見つけたときに「現在」をエコーするサブナビゲーションを作成しようとしています。
私の問題は、$subpage == $encoded_subpage_name?"current":""
比較すると、スペースのあるsubnav名は常に等しいのfalse
です$encoded_subpage_name
が、そう+
で$subpage
はないからです。
<?php
if (isset($_GET['p'])) {
$page = $_GET['p'];
} else {
$page = "";
}
if (isset($_GET['subp'])) {
$subpage = $_GET['subp'];
} else {
$subpage = "";
}
$subpages = array(
"powered by company",
"text messaging",
"the app",
"NFC",
"your membership",
"faq",
"privacy policy",
"terms & conditions"
);
function buildSubNav($page, $subpages) {
foreach ($subpages as $subpage) {
$encoded_subpage_name = urlencode($subpage);
echo '<li class="' . selected_subpage($encoded_subpage_name) . '"><a href="?p=' . $page . '&subp=' . $encoded_subpage_name . '"> ' . $subpage . '</a></li>';
}
}
function selected_subpage($encoded_subpage_name) {
global $subpage;
$subpage = ($subpage);
echo $subpage;
return $subpage == $encoded_subpage_name?"current":"";
}
?>
<ul>
<?php buildSubNav($page, $subpages); ?>
</ul>