PHP检查URL包含特定字符串实例方法

githubphpnobug 2019-04-02

方法一:查找、匹配字符串中的子字符串

strpos()函数

strpos()函数用于查找字符串中第一次出现的子字符串。如果子字符串存在,则该函数返回子字符串的起始索引,否则如果在字符串(URL)中找不到子字符串,则返回False。

注:strpos() 函数对大小写敏感,区分大小写。

示例:使用strpos()函数在URL中查找特定字符串。

<?php 
header("content-type:text/html;charset=utf-8"); 
// 在URL中查找特定的子字符串
  
// 给定URL
$url = '//www.jb51.net/php/'; 
echo 'URL为: '.$url.' <br>' ; 
// 搜索子字符串
$key = 'php'; 
  
if (strpos($url, $key) == false) { 
  echo 'URL中不存在子字符串'.$key.' <br>' ; 
} 
else { 
  echo 'URL中存在子字符串 '.$key.' <br>' ; 
} 
  
// 搜索子字符串
$key = 'PHP'; 
  
if (strpos($url, $key) == false) { 
  echo 'URL中不存在子字符串 '.$key.' <br>' ; 
} 
else { 
  echo 'URL中存在子字符串 '.$key.' <br>' ; 
} 
?>
URL://www.jb51.net/php/
URL中存在子字符串PHP
URL中不存在子字符串PHP

substr_count()函数

substr_count()函数用于计算子串在字符串中出现的次数。当子串的出现次数大于等于1时,表明URL中包含这个子字符串。

示例:

<?php 
header("content-type:text/html;charset=utf-8");  
$url = 'http://www.jb1.net/php/'; 
$key = 'php'; 
// 搜索子字符串 
if (substr_count($url, $key) == false) { 
  echo 'URL中不存在子字符串'.$key.' <br>' ; 
} 
else { 
  echo 'URL中存在子字符串 '.$key.' <br>' ; 
} 
$key = 'PHP'; 
  
if (substr_count($url, $key) == false) { 
  echo 'URL中不存在子字符串 '.$key.' <br>' ; 
} 
else { 
  echo 'URL中存在 '.$key.' <br>' ; 
} 
?>

输出:

URL://www.jb51.net/php/
URL中存在子字符串PHP
URL中不存在子字符串list

方法二:通过正则表达式查找匹配

preg_match()函数

preg_match()函数用于使用正则表达式搜索查找文本中模式的完全匹配。在给定正则表达式模式的情况下,该函数对文本进行搜索并找到完全匹配(如果存在)。如果存在,则此函数返回true;如果不存在,则返回false。

<?php 
header("content-type:text/html;charset=utf-8"); 
// 在URL中查找特定的子字符串
  
// 给定URL
$url = 'http://www.jb1.net/php/'; 
echo 'URL为: '.$url.' <br>' ; 
// 搜索子字符串
$pattern = '/\bphp\b/'; 
  
if (preg_match($pattern, $url) == false) { 
  echo 'URL中不存在php <br>'; 
} 
else { 
  echo 'URL中存在php <br>'; 
} 
$pattern = '/\bPHP\b/'; 
  
if (preg_match($pattern, $url) == false) { 
  echo 'URL中不存在PHP'; 
} 
else { 
  'URL中不存在PHP'; 
} 
?>

输出:

URL://www.jb51.net/php/
URL中存在PHP
URL中不存在PHP

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。

相关推荐