惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
Cisco Talos Blog
Cisco Talos Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
D
Docker
S
SegmentFault 最新的问题
博客园 - 聂微东
美团技术团队
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
GbyAI
GbyAI
L
LangChain Blog
Vercel News
Vercel News
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
T
Threat Research - Cisco Blogs
T
Threatpost
Scott Helme
Scott Helme
T
Tailwind CSS Blog
Latest news
Latest news
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
The Register - Security
The Register - Security
罗磊的独立博客
P
Proofpoint News Feed
腾讯CDC
S
Schneier on Security
雷峰网
雷峰网
A
About on SuperTechFans
T
Tenable Blog
F
Full Disclosure
Cyberwarzone
Cyberwarzone
博客园_首页
有赞技术团队
有赞技术团队
K
Kaspersky official blog

小锋博客

mac无法删除软件,提示已锁定的解决方法-小锋博客 php的ob系列函数中flush()与ob_flush()的区别 nginx服务器中ob_flush函数和flush函数不起作用的解决方案-小锋博客 2023-11-23-小锋博客 2023-09-24-小锋博客 2022.02.01 2020.08.23 2020.04.06 2020.02.14
php中strpos字符串函数用法详解-小锋博客
XiaoFeng · 2023-12-03 · via 小锋博客

一、概述

strpos函数是PHP中一种非常常用的字符串函数之一,它的主要作用是查找一个字符串在另一个字符串中第一次出现的位置。在日常开发中,我们经常会用到这个函数,因此对它进行详细的了解是非常必要的。

二、语法

strpos函数的语法如下:

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

其中,$haystack表示要在其中查找的字符串;$needle表示需要查找的字符串或者字符;$offset表示开始查找的位置,默认是0。

三、示例

用法1:查找普通字符

我们先来看一个最简单的用法,就是在一个字符串中查找一个普通的字符:

    $str = "Hello World!";
    $pos = strpos($str, 'o');
    echo $pos; // 输出结果为4

在上述代码中,我们定义了一个字符串$str,在其中查找字符'o',并将结果赋给$pos变量。由于字符'o'第一次出现在字符串的第5个位置,因此输出的结果为4。

用法2:查找子字符串

除了查找一个普通字符之外,strpos函数还可以用来查找一个子字符串:

    $str = "Hello World!";
    $pos = strpos($str, 'World');
    echo $pos; // 输出结果为6

在上述代码中,我们定义了一个字符串$str,在其中查找子字符串'World',并将结果赋给$pos变量。由于子字符串'World'第一次出现在字符串的第7个位置,因此输出的结果为6。

用法3:查找未找到的字符或字符串

当strpos函数在一个字符串中查找不到指定的字符或字符串时,会返回false。因此,在使用strpos函数时,我们需要特别留意这个返回值,以避免产生错误结果:

    $str = "Hello World!";
    $pos = strpos($str, 'o', 5);
    echo $pos; // 输出结果为false

在上述代码中,我们定义了一个字符串$str,在其中从第5个位置开始查找字符'o'。由于在第5个字符之后,字符'o'并没有再次出现,因此返回结果为false。

用法4:判断字符串是否以指定子字符串开头

有时候,我们需要判断一个字符串是否以另一个字符串开头,这时可以利用strpos函数实现如下:

    $str = "Hello World!";
    if(strpos($str, 'Hello') === 0){
        echo "以'Hello'开头";
    }
    else{
        echo "不以'Hello'开头";
    }

在上述代码中,我们定义了一个字符串$str,并利用strpos函数判断它是否以'Hello'开头。由于'Hello'出现在字符串的开头位置,因此返回的索引值为0。由于返回值是一个整型,因此我们需要用全等号(===)来判断结果是否等于0。如果返回值为0,说明字符串以指定子字符串开头;否则,说明不是以指定子字符串开头。

用法5:多个字符或字符串的查找

如果我们需要查找多个字符或者子字符串在一个字符串中的位置,可以通过循环多次调用strpos函数实现。例如:

    $str = "Hello World!";
    $needles = array('o', 'l');
    foreach($needles as $needle){
        $pos = strpos($str, $needle);
        echo "$needle 出现在位置 $pos";
    }

在上述代码中,我们定义了一个字符串$str,并将需要查找的字符或字符串存入一个数组$needles。然后我们逐个循环$needles中的元素,调用strpos函数查找它在字符串$str中的位置,并将结果输出到页面上。

总结

综上所述,strpos函数是PHP中一种非常实用的字符串函数。它可以用来查找一个字符串中指定的字符或字符串,并返回它第一次出现的位置。在日常开发中,我们经常会用到strpos函数,因此学好它是非常必要的。同时,在使用strpos函数时,我们需要特别留意它的返回值,以避免产生错误结果。