【问题标题】:Array placeholders数组占位符
【发布时间】:2012-11-14 19:11:31
【问题描述】:

我有一个数组,其中 PLACEHOLDER 是我稍后在代码中得到的变量 $value 的占位符:

$names = array(
    "<a href='http://skyler.com' title='PLACEHOLDER'>Skyler</a>",
    "<a href='http://jesse.com' title='PLACEHOLDER'>Jesse</a>",
    "<a href='http://walter.com' title='PLACEHOLDER'>Walter</a>",
    "<a href='http://skyler.com' title='PLACEHOLDER'>Skyler</a>",
    "<a href='http://hank.com' title='PLACEHOLDER'>Hank</a>",
    "<a href='http://marie.com' title='PLACEHOLDER'>Marie</a>",
    "<a href='http://walter.com' title='PLACEHOLDER'>Walter</a>",
    "<a href='http://walter.com' title='PLACEHOLDER'>Walter</a>",
    "<a href='http://jesse.com' title='PLACEHOLDER'>Jesse</a>",
    );

要检查我的数组中相等值的频率, 我用array_count_values 计算它们。

$count = array_count_values($names);

foreach ($count as $key => $value) {
    echo $value . ' – ' . $key . '<br />';
}

所以我得到了这样的东西:

3 – <a href='http:/walter.com' title='PLACEHOLDER'>Walter</a>
2 – <a href='http://jesse.com' title='PLACEHOLDER'>Jesse</a>
2 – <a href='http://skyler.com' title='PLACEHOLDER'>Skyler</a>
1 – <a href='http://hank.com' title='PLACEHOLDER'>Hank</a>  
1 – <a href='http://marie.com' title='PLACEHOLDER'>Marie</a>

现在我将 PLACEHOLDER 替换为 $value,因此我将数字作为链接的标题标签。

【问题讨论】:

    标签: arrays placeholder


    【解决方案1】:
    foreach ($count as $key => $value) {
        echo $value . ' – ' . str_replace('PLACEHOLDER', $value, $key) . '<br />';
    }
    

    【讨论】:

      【解决方案2】:

      你在问什么,我不明白,你想用 $value 替换 PLACEHOLD 然后这样做

      $names = array(
      "<a href='http://skyler.com' title='".$PLACEHOLDER."'>Skyler</a>",
      "<a href='http://jesse.com' title='".$PLACEHOLDER."'>Jesse</a>"
      );
      

      【讨论】:

      • $value 是我稍后在我的代码中得到的一个数组,所以如果我写 $value 而不是 PLACEHOLDER 我只会在所有标题标签中得到一个 2。但$value实际上是一个包含以下内容的数组:$value = array(3, 2, 2, 1, 1)
      【解决方案3】:

      使用str_replace 将PLACEHOLDER 替换为$value

      foreach ($count as $key => $value) {
          $key = str_replace('PLACEHOLDER', $value, $key); //<--replace PLACEHOLDER here
          echo $value . ' – ' . $key . '<br />';
      }
      

      【讨论】:

        【解决方案4】:

        正确的代码是:

        foreach ($count as $key => $value) {
            echo str_replace('PLACEHOLDER', $value, $key); //this will replace placeholder with number of tags
            echo '<br />';
        }
        

        【讨论】:

          猜你喜欢
          • 2013-09-13
          • 2011-07-26
          • 1970-01-01
          • 1970-01-01
          • 2017-01-05
          • 2016-01-15
          • 2019-11-17
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多