【问题标题】:php string comparephp字符串比较
【发布时间】:2011-11-30 14:51:25
【问题描述】:

我正在尝试比较 url 的特定部分以获取结尾列表(即资源/“位置”,其中位置是状态首字母或字符串)。我正在使用它来填充下拉菜单。这适用于 2 个字母状态,但是当我比较字符串时,它仍然显示重复。这是我正在使用的代码,“National”是没有被过滤掉的重复字符串。

$url = explode("/", $row['url']);
if(strcmp(trim($location[$url[2]]),trim($url[2])) != 0)
{
    $location = array($url[2] => $url[2]);
    echo '<option>'.$location[$url[2]].'</option>\n';
}

有没有更好的方法来比较字符串?

【问题讨论】:

    标签: php strcmp


    【解决方案1】:

    使用in_array() (http://php.net/manual/en/function.in-array.php)

    $location = array();
    $url = explode("/", $row['url']);
    if(!in_array($url[2], $location))
    {
        $location[$url[2]] = $url[2];
        echo '<option>'.$location[$url[2]].'</option>\n';
    }
    

    【讨论】:

      【解决方案2】:

      你为什么还要使用 strcmp? 还有,你为什么要重置 $location?

      $url = explode("/", $row['url']);
      if(trim($location[$url[2]]) != trim($url[2]))
      {
          echo '<option>'.$url[2].'</option>\n';
      }
      

      虽然不确定是什么导致重复,但我认为我需要一个示例来解决这个问题。

      编辑:忽略上述内容,在阅读其他答案后,我看到了您想要实现的目标。这个问题不是很清楚。

      【讨论】:

      • 我是 Web 开发的新手。我更喜欢使用列表来添加元素,但我没有找到好的替代品。我认为这是向数组添加新元素的方法。
      • 是的,不用担心对这一切都是陌生的。我想我只是不明白你最初想要达到的目标 - 这是我的错!
      猜你喜欢
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多