在之前的文章《带你快速掌握PHP字符串的替换(实例详解)》中我们详细的介绍了PHP中字符床替换的相关知识,本篇文章我们来看一下PHP中字符串定位的相关知识,希望对大家有帮助!
在前一篇文章中我们了解了PHP中的字符串想要完成替换字符的操作需要使用到PHP提供的substr_replace
函数与 str_replace
函数,这样就能够解决PHP替换的问题,同样的在PHP的开发过程中字符串的定位也是很常见的。
在PHP中想要搜索字符串在另一个字符串中是否出现,可以通过PHP中的strstr
函数,接下来我们就来看一下怎样去定位查找一个字符串。
<strong><span style="font-size: 20px;">strstr</span></strong>
函数-定位字符串元素
在PHP中可以通过strstr
函数来搜索一个字符串在另一个字符串中的第一次出现,strstr
函数的基本语法格式如下:
strstr(string,search,before_search)
其中需要注意的是:参数string
表示的是需要搜索的字符串,参数search
表示的是被搜索的字符串,如果该参数不是一个字符串那么这个参数就会被转化为整型并且作为字符的序号来使用,参数before_search
默认的是false,如果设置为true
的话,返回的结果就是参数search第一次出现之前的那部分字符串。
该函数的返回结果是从匹配点开始的字符串的剩余部分,如果未找到需要搜索的字符串,那么返回的结果就是flase。
接下来我们通过示例来看一下strstr函数的使用,示例如下:
<?php $email = '123456789123456789@gamil.com'; echo $email. '<br/>';//正常输出 $domain = strstr($email, '@');//通过strstr函数来搜索@出现的第一次位置 echo $domain; ?>
输出结果:
在上述示例中,通过strstr函数返回的结果就是我们搜索的字符串之后剩余的部分。我们通过strstr函数完成了定位字符串的目的。
提到定位匹配在PHP中就不得不提到正则表达式了,在上文中我们通过strstr
函数完成了定位字符串,在PHP中还有一个函数是preg_grep
()函数,接下来我们一起来看一下它的用法。
<strong><span style="font-size: 20px;">preg_grep</span></strong>
()函数-定位数组元素
在PHP中提到搜索定位,绕不过去的肯定就是正则表达式了,PHP就提供了 preg_grep
() 通过正则表达式来进行匹配数组元素。
preg_grep
()函数的基本语法格式如下:
array preg_grep ( string $pattern , array $input [, int $flags = 0 ] )
其中需要注意的是:参数pattern
是用正则表达式来定义的,也就是要搜索的模式,参数input
表示的是要搜索的数组,参数flags
一般设置为PREG_GREP_INVERT
表示的是这时候的函数返回的结果是不匹配的 $pattern
元素所组成的数组。
接下来我们通过示例来看一下preg_grep
()函数的使用,示例如下:
<?php $pattern = '/[0-9]/'; $subject = array('weuy','r3ui','76as83','s','0ck9'); $arr = preg_grep($pattern,$subject); show($arr); function show($var){ if(empty($var)){ echo 'null'; }elseif(is_array($var)||is_object($var)){ echo ' '; print_r($var); echo ' '; }else{ echo $var; } } echo '<br/>'; $arr1 = preg_grep($pattern,$subject,PREG_GREP_INVERT); show($arr1); function show1($var1){ if(empty1($var1)){ echo 'null'; }elseif(is_array($var1)||is_object($var1)){ echo ' '; print_r($var1); echo ' '; }else{ echo $var1; } } ?>
输出结果:
通过上述示例我们可以匹配到数组元素,并且参数flags的值不同,preg_grep()函数返回的结果也不同。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。
以上是PHP中怎样去定位字符串与数组中的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

本文比较了酸和基本数据库模型,详细介绍了它们的特征和适当的用例。酸优先确定数据完整性和一致性,适合财务和电子商务应用程序,而基础则侧重于可用性和

本文讨论了确保PHP文件上传的确保,以防止诸如代码注入之类的漏洞。它专注于文件类型验证,安全存储和错误处理以增强应用程序安全性。

本文讨论了在PHP中实施API速率限制的策略,包括诸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之类的库。它还涵盖监视,动态调整速率限制和手

本文讨论了使用password_hash和pyspasswify在PHP中使用密码的好处。主要论点是,这些功能通过自动盐,强大的哈希算法和SECH来增强密码保护

本文讨论了OWASP在PHP和缓解策略中的十大漏洞。关键问题包括注射,验证损坏和XSS,并提供用于监视和保护PHP应用程序的推荐工具。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

禅工作室 13.0.1
功能强大的PHP集成开发环境