检查网址中是否只有特定参数

时间:2020-02-26 15:38:48

标签: php parameters get

我想根据URL中的参数显示一些内容。

例如:我有一个名为 color 的过滤器。

URL看起来像这样:

/?filter_color = 黑色

现在我可以为黑色添加一些内容。

但是现在我有多个有源滤波器的问题。

此刻,如果URL如下所示,我还将显示黑色内容:

/?filter_color = 黑色白色

但是,如果有多个处于活动状态的过滤器,我不想显示任何内容。

这是我当前的代码:

if ( (isset($filter_color) == 'black') ) :

    echo 'content for black';

endif;

是否可以询问是否仅使用过滤器“ 黑色”? 我尝试了以下操作,但是会引发错误:

isset($filter_color) === 'black'

1 个答案:

答案 0 :(得分:2)

检查一个字符串是否与另一个字符串相同

如果要检查字符串是否仅包含一组特定字符,则可以使用strcmpstrcasecmp。 strcasecmp不区分大小写。

if ( strcasecmp($filter_color, 'black') === 0) ) :
  echo 'content for black';
endif;

如果字符串相同,则函数将返回0。如果字符串不同,则它将返回1(如果第一个字符串大于第二个字符串)或-1(如果第一个字符串小于第二个字符串)

检查一个字符串是否包含另一个字符串(但可以包含更多字符串):

如果要查看字符串中是否有黑色,则可以使用strpos。第一个参数是您要查找的字符串,第二个参数是您要查找的字符串。如果找到它,它将返回它在字符串中出现的位置。

if ( strpos($filter_color, 'black') !== 0) ) :
  echo 'content for black';
endif;

请注意,如果字符串位置在字符串的开头,它将返回0。您必须使用===或!==