您的当前位置:首页>全部文章>文章详情

【PHP】PHP8.0新函数解析:str_contains()

CrazyPanda发表于:2024-07-26 15:28:46浏览:246次TAG:

php 8.0是php编程语言的最新版本,它带来了许多新的功能和增强功能,其中一个新函数是str_contains()。该函数是用于确定一个字符串是否包含另一个字符串的。

在本篇文章中,我们将探讨str_contains()函数的用法和示例,以及它如何与PHP的其他字符串函数协同工作。

一、str_contains()函数的定义

str_contains()函数可以在PHP中用来确定一个字符串是否包含另一个字符串。它可以取两个字符串作为输入参数,并返回一个布尔值,如果在第一个字符串中包含第二个字符串,则返回true,否则返回false。

以下是str_contains()函数的基本语法:

bool str_contains ( string $haystack , string $needle )

其中,$haystack是要搜索的字符串,$needle是要查找的子字符串。如果$needle在$haystack中,则返回true,否则返回false。

值得一提的是,该函数仅适用于PHP 8.0及更高版本。

二、str_contains()函数的示例

在这里,我们将使用一些示例来说明str_contains()函数的使用场景。首先,我们来看一个基本示例,如下所示:

$str1 = "Hello, World!";
$str2 = "World";
if(str_contains($str1, $str2)){
  echo "The string '$str1' contains '$str2'";
}else{
  echo "The string '$str1' does not contain '$str2'";
}

该示例将$ str1和$ str2变量传递给str_contains()函数,并使用条件语句确定第一个字符串是否包含第二个字符串。如果包含,则打印匹配的结果,否则打印不匹配的结果。

现在假设我们有一个字符串数组,我们想要查找其中包含指定子字符串的元素。我们可以使用str_contains()函数来实现:

$array = array("apple", "banana", "kiwi", "orange");
$search = "ki";
foreach($array as $fruit){
  if(str_contains($fruit, $search)){
echo "Found matching element: $fruit <br>";
}
}

这个示例中,我们在一个字符串数组中查找包含“ki”的元素。我们使用一个foreach循环遍历数组中的所有元素,并使用str_contains()函数在每个字符串上进行查找。如果找到符合条件的元素,我们将打印该元素。

三、与其他字符串函数一起使用

str_contains()函数可以与许多其他字符串函数一起使用,包括strpos()和strstr()。让我们用一个示例来展示它们如何协同工作:

$str = "The quick brown fox jumps over the lazy dog.";
$search = "fox";
if(strpos($str, $search) !== false){
   echo "The string '$str' contains '$search'.
";
}
if(strstr($str, $search)){
   echo "The string '$str' contains '$search'.
";
}
if(str_contains($str, $search)){
   echo "The string '$str' contains '$search'.
";
}

在这个示例中,我们在同一个字符串上使用strpos()、strstr()和str_contains()函数来寻找“fox”子字符串。每个函数都执行相同的任务,但是使用不同的方式来判断字符串是否包含子字符串。

四、结论

str_contains()函数是一个强大的PHP 8.0新函数,可以用于在PHP中查找一个字符串是否包含另一个字符串。无论是在基本应用程序中还是在高度动态应用程序中,它都可以帮助我们轻松完成字符串搜索任务。

本文所提到的所有示例都可以用于实际应用中,让我们开始享受这个新功能吧!

猜你喜欢

【PHP】PHP8如何创建可扩展的应用程序
深入掌握PHP8底层开发原理与新特性:如何创建可扩展的应用程序导语随着互联网技术的发展,PHP成为最受欢迎的Web开发语言之一。PHP语言的最新版本PHP8在底层开发原理和新特性方面做了很多改进和优化,使得开发者可以更好地创建可扩展的应用程序。本文将带您深入探索PHP8的底层开发原理和新特性,并给出代码示例来帮助您更好地理解。一、PHP8底层开发原理的改进JIT编译器的引入PHP8引入了JIT(Just-In-Time)编译器,通过将PHP代码转换成本地机器码,使得PHP代码的执行速度得到了显著
发表于:2024-01-07 浏览:312 TAG:
【PHP】删除文件为什么会失败
php删除文件失败的原因:文件在删除时仍然被其他线程或进程占用。解决方法:首先手动释放文件对象,避免因为被其他线程或进程占用而导致删除失败;然后利用unlink()函数删除文件即可。原因分析:文件仍然被其他进程占用。所以我们最好释放下文件对象,避免因为被其他线程或进程占用而导致删除失败。(推荐教程:php图文教程)unlink() 函数删除文件。如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。(视频教程推荐:php视频教程)代码实现:1234567891011121314
发表于:2023-12-06 浏览:596 TAG:
【PHP】关于PHP8中match新语句的骚操作
PHP8新语法:match [更骚的匿名函数操作]PHP8 新出的一个语法很好用,就是 match 语句。match 语句跟原来的 switch 类似,不过比 switch 更加的严格和方便原来的 switch 语句代码如下:function&nbsp;getStr(&nbsp;$strType&nbsp;){ &nbsp;&nbsp;&nbsp;&nbsp;switch(&nbsp;$strType&nbsp;){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;nb
发表于:2024-01-06 浏览:326 TAG:
【PHP】PHP8.1新特性大讲解之使用字符串键解包数组
使用字符串键解包数组(Array unpacking with string keys)PHP 7.4 中已经允许数组解包,但它只适用于数字键。之前不支持字符串键的原因是因为对于如何合并数组重复项没有达成任何共识。RFC 通过遵循以下语义干净地解决了这个问题array_merge:$array1&nbsp;=&nbsp;[&quot;a&quot;&nbsp;=&gt;&nbsp;1]; $array2&nbsp;=&nbsp;[&quot;b&quot;&nbsp;=&gt;&nbsp;2];
发表于:2024-01-04 浏览:354 TAG:
【PHP】php怎么将json格式化输出
在PHP中,我们可以使用json_encode()函数将数据转换为JSON格式。而要格式化输出JSON数据,可以使用json_encode()函数的第三个参数传递JSON_PRETTY_PRINT常量。下面是在PHP中将JSON格式化输出的具体步骤:1. 创建一个包含数据的数组或对象:“`php$data = array(&nbsp; &nbsp; ‘name’ =&gt; ‘John’,&nbsp; &nbsp; ‘age’ =&gt; 30,&nbsp; &nbsp; ‘city’ =&amp;gt
发表于:2024-08-02 浏览:305 TAG:
【PHP】PHP 字符串编码处理 (附各语言的字符集编码范围)
PHP中GBK和UTF8编码处理&nbsp;&nbsp;一、编码范围1. GBK (GB2312/GB18030) x00-xff GBK双字节编码范围 x20-x7f ASCII xa1-xff 中文 x80-xff 中文 2. UTF-8 (Unicode)u4e00-u9fa5 (中文) x3130-x318F (韩文) xAC00-xD7A3 (韩文) u0800-u4e00 (日文) ps: 韩文是大于[u9fa5]的字符 正则例子:preg_replace(&quot;/([x80-
发表于:2023-12-13 浏览:369 TAG:
【PHP】thinkphp5支付宝服务商手机网站支付(新版sdk)
&nbsp;public&nbsp;function&nbsp;pay()&nbsp;{ &nbsp;Vendor(&#39;alipay.wappay.service.AlipayTradeService&#39;); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Vendor(&#39;alipay.wappay.buildermodel.AlipayTradeWapPayContentBuilder&#39;); &nbsp;&nbsp;&amp;
发表于:2023-12-27 浏览:328 TAG:
【PHP】ThinkPHP 集成 jwt 技术 token 验证
ThinkPHP 集成 jwt 技术 token 验证一、思路流程二、安装 firebase/php-jwt三、封装token类四、创建中间件,检验Token校验时效性五、配置路由中间件六、写几个测试方法,通过postman去验证一、思路流程客户端使用用户名和密码请求登录服务端收到请求,验证用户名和密码验证成功后,服务端会签发一个token,再把这个token返回给客户端客户端收到token后可以把它存储起来,比如放到cookie中客户端每次向服务端请求资源时需要携带服务端签发的token,可以
发表于:2024-08-08 浏览:282 TAG: #php #jwt #token
【PHP】php如何去掉数组内重复元素
php去掉数组内重复元素的方法:1、使用“array_unique()”函数,去除数组中的重复数据;2、通过foreach循环遍历,通过定义一个新的数组存储不重复的数据的方法实现去重;3、使用array_flip()和array_keys()函数,可得到去重后的数组;4、使用array_filter()函数,通过使用该函数结合匿名函数的方式对原始数组进行去重。本教程操作系统:Windows10系统、PHP8.1.3版、Dell G3电脑php去除数组内重复元素的方法方法一:使用arra
发表于:2023-12-20 浏览:339 TAG:
【PHP】php中?:与??运算符有什么不同?
在PHP 7中,有两个类似的语法结构:“??”和“?:”,它们都是用于处理条件判断和返回值的运算符。尽管它们看起来相似,但它们的作用和用法有一些区别。&quot;?:&quot;是三目运算符,语法格式为:$result = $test ? $test : ′ ′ ; 意思就是当test存在时(即empty($test)为false),则返回它本身,否则返回空(当然也可以返回其他,这里的空只是举个例子)。&quot;??&quot;是php7新引入的语法,它相当于是isset($result[‘k
发表于:2024-08-01 浏览:279 TAG: