PHP中strpos、strstr和stripos、stristr函数分析

PHP中strpos、strstr和stripos、stristr函数分析

什么是strpos函数和strstr函数?

  • strpos 函数:查找字符串首次出现的位置。
  • strstr 函数:查找字符串在另外一个字符串中的第一次出现。

这两个函数区别在于:

  • strpos 返回的是目标字符串在原字符串中的起始位置;
  • strstr 返回的则是目标字符串之后,原字符串剩余部分,包括目标字符串本身。

strpos函数的语法

int strpos( string $haystack, mixed $needle, int $offset = 0 )

参数说明:

  • haystack: 要被查找的主字符串;
  • needle: 必需,规定需要在主字符串中查找的字符串/字符;
  • offset: 可选,规定在主字符串中搜索的起始位置。默认是 0。

方案一:查找一个子字符串在原字符串中首次出现的位置

$string = 'Hello World';
$needle = 'World';
$position = strpos($string, $needle);
if ($position === false) {
    echo '没有找到相关内容。';
} else {
    echo '子字符串在原字符串第 ' . ($position + 1) . ' 个位置。';
}

以上示例中,定义了一个字符串 $string 和一个子字符串 $needlestrpos 函数会在 $string 中查找 $needle,如果找到则返回 $needle$string 中的位置,否则返回 false。

方案二:查找一个字符串在另一个字符串中第一次出现

$mainString = 'The quick brown fox jumps over the lazy dog ';
$subString = 'brown';

$remainingString = strstr($mainString, $subString);

if ($remainingString) {
    echo $subString.'在'.$mainString.'中的第一个位置之后的字符串为 '.$remainingString;
} else {
    echo '未找到相关内容。';
}

以上示例中,定义了一个主字符串 $mainString 和一个子字符串 $subStringstrstr 函数会在 $mainString 中查找 $subString,如果找到,则返回 $subString$mainString 中第一次出现的位置,以及 $mainString$subString 之后余下的字符串。如果没有找到,则返回 false。

什么是stripos函数和stristr函数?

  • stripos 函数:查找字符串中第一次出现的位置(不区分大小写)。
  • stristr 函数:查找字符串在另外一个字符串中的第一次出现(不区分大小写)。

这两个函数与 strposstrstr 差不多,但是它们不区分大小写。

stripos函数和stristr函数的语法

int stripos(string $haystack, mixed $needle, int $offset = 0)

string stristr(string $haystack, mixed $needle, bool $before_needle = false)

参数说明:

  • haystack: 要被查找的主字符串;
  • needle: 必需,规定需要在主字符串中查找的字符串/字符;
  • offset: 可选,规定在主字符串中搜索的起始位置。默认是 0。
  • before_needle: 可选,如果设置为 TRUE,则 stristr() 函数返回 needle 之前的部分,否则返回 needle 之后的部分。默认是 FALSE。

方案一:查找一个子字符串在原字符串中首次出现的位置(不区分大小写)

$string = 'Hello World';
$needle = 'world';
$position = stripos($string, $needle);
if ($position === false) {
    echo '没有找到相关内容。';
} else {
    echo '子字符串在原字符串第 ' . ($position + 1) . ' 个位置。';
}

以上示例中,同样定义了一个字符串 $string 和一个子字符串 $needlestripos 函数区分大小写,会在 $string 中查找 $needle,因为 $needle 的大小写和在 $string 中出现的大小写不一样,所以这里我们使用了 stripos 函数来查找字符串。函数会返回 $needle$string 中的位置,否则返回 false。

方案二:查找一个字符串在另一个字符串中第一次出现(不区分大小写)

$mainString = 'The quick brown fox jumps over the lazy dog ';
$subString = 'BRown';

$remainingString = stristr($mainString, $subString);

if ($remainingString) {
    echo $subString.'在'.$mainString.'中的字符串为 '.$remainingString;
} else {
    echo '未找到相关内容。';
}

以上示例中,同样定义了一个主字符串 $mainString 和一个子字符串 $subStringstristr 函数会忽略大小写在 $mainString 中查找 $subString,如果找到,则返回 $subString$mainString 中第一次出现的位置,以及 $mainString$subString 之后余下的字符串。如果没有找到,则返回 false。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP中strpos、strstr和stripos、stristr函数分析 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • php截取中文字符串函数实例

    PHP截取中文字符串函数实例 在PHP中,截取中文字符串与截取英文字符串不同,因为中文占用的字节数不同,所以我们需要针对中文字符进行截取。下面是一些可用的方法。 方法一:substr和mb_substr函数 substr和mb_substr函数都可以用于截取字符串,但是substr函数对于截取含有中文字符的字符串经常会出现乱码问题,而mb_substr函数在…

    PHP 2023年5月26日
    00
  • PHP下escape解码函数的实现方法

    PHP下escape解码函数的实现方法 什么是escape编码? escape编码是指将字符串中的某些字符转换为以“%”符号表示的十六进制ASCII值,并在前面加上“%”符号。这种编码方法常用于URL参数传递、HTML的attribute和某些邮箱协议。 例如,对于字符串“ hello world !”,如果使用escape编码,就会得到“%20hello%…

    PHP 2023年5月27日
    00
  • php读取xml实例代码

    下面我将详细讲解php读取xml实例代码的完整攻略。首先,我们需要了解PHP中的SimpleXML扩展,它提供了许多简单易用的函数来读取、修改和输出XML文档。接下来,我将分为以下几个步骤来介绍php读取xml实例代码的完整攻略。 步骤一:读取XML文档 在PHP中,可以使用simplexml_load_file()函数来读取XML文档,该函数将返回一个Si…

    PHP 2023年5月26日
    00
  • PHP单例模式详细介绍

    下面我将为您详细讲解PHP单例模式的完整攻略。 什么是PHP单例模式 PHP单例模式是一种设计模式,也称为单例模式,它是一种经过充分考虑并充分测试的技术,可以确保一个类只有一个实例,并提供该实例的全局访问点。 单例是一种限制类实例数量的方式,它可以确保一个类只有一个实例,并为其提供全局访问点。这通常是通过让类自行负责存储它的唯一实例,以及在此之后访问该实例的…

    PHP 2023年5月23日
    00
  • PHP中使用TCPDF生成PDF文档实例

    下面我将为您详细介绍如何使用TCPDF库在PHP中生成PDF文档,具体步骤如下: 步骤一:下载并安装TCPDF 首先,您需要从TCPDF官网(https://tcpdf.org/)下载最新的TCPDF库,并将解压缩后的文件夹复制到您的项目中。然后,在您的PHP代码中,将TCPDF库引入到您的文件中,例如: require_once(‘path/to/tcpd…

    PHP 2023年5月27日
    00
  • PHP 实现explort() 功能的详解

    这里是关于 “PHP 实现 explode() 功能的详细攻略” 的完整说明: 1. 什么是 explode() 函数? explode() 函数是 PHP 中的一个用于字符串操作的函数,它能够将一个字符串按照指定的分隔符将其分割成多个子串,最终返回一个字符串数组。这个函数的语法如下: array explode ( string $delimiter , …

    PHP 2023年5月27日
    00
  • php写入、删除与复制文件的方法

    下面我就介绍一下PHP写入、删除和复制文件的方法。 PHP写入文件的方法 在PHP中,写入文件的主要函数是file_put_contents()。这个函数接收两个参数:要写入的文件名和要写入的内容。如果文件不存在,则会自动创建文件。如果文件已经存在,则会覆盖原有内容。 下面是一个简单的例子,演示如何使用file_put_contents()方法将数据写入到”…

    PHP 2023年5月26日
    00
  • PHP批量获取网页中所有固定种子链接的方法

    一、概述 PHP可以实现批量获取网页中所有固定种子链接的方法。本文将详细讲解如何使用PHP完成批量获取网页中所有固定种子链接的方法。该方法适用于各类网页,在爬虫、数据抓取等领域有广泛应用。 二、方法 步骤一:获取指定网页的HTML源代码 要获取指定网页的HTML源代码,可以使用file_get_contents()函数实现。 示例代码如下: $url = ‘…

    PHP 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部