【问题标题】:Condensing PHP Arrays?压缩 PHP 数组?
【发布时间】:2011-07-19 07:43:58
【问题描述】:

您好,我有以下代码来生成我的导航/页面菜单以及将样式元素应用于活动页面。我想知道如何压缩代码而不是合并两个数组?

这是我当前的代码,两者的区别在于 html 链接输出。 “主页”链接必须是 <a href="./'. $k .'">'. $v .'</a>

而其他页面需要有<a href="./?p='. $k .'">'. $v .'</a>

<?php

    $current = array(
    "" => "Home"
    );
    foreach( $current as $k => $v ) {
        $active = $_GET['p'] == $k
        ? ' class="current_page_item"'
        : '';
    echo '<li'. $active .'><a href="./'. $k .'">'. $v .'</a></li>';
    }

    $current = array(
        "contact" => "Contact Us",
        "about" => "About Us",
        "privacy" => "Privacy Policy"
    );
    foreach( $current as $k => $v ) {
        $active = $_GET['p'] == $k
            ? ' class="current_page_item"'
            : '';
        echo '<li'. $active .'><a href="./?p='. $k .'">'. $v .'</a></li>';
    }

?>

任何帮助将不胜感激,谢谢:)

【问题讨论】:

  • if ($v != "Home") $k = '?p=' . $k 是您需要有一个循环的唯一更改...

标签: php html arrays echo


【解决方案1】:
<?php

$current = array(
    "" => "Home"
    "contact" => "Contact Us",
    "about" => "About Us",
    "privacy" => "Privacy Policy"
);
foreach( $current as $k => $v ) {
    $active = $_GET['p'] == $k
        ? ' class="current_page_item"'
        : '';
    echo '<li'. $active .'><a href="./'.(empty($k)?"":"?p=") . $k .'">'. $v .'</a></li>';
}

?>

【讨论】:

    【解决方案2】:

    几乎一样

    $href =empty($k) ? "./" : "./?p={$k}" ;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-02-06
      • 2016-12-26
      • 2014-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多