📜  str_includes php (1)

📅  最后修改于: 2023-12-03 15:05:22.949000             🧑  作者: Mango

检查字符串是否包含特定字符 - str_includes php

简介

在开发过程中,经常会需要判断某个字符串是否包含特定字符。在 PHP 中,我们可以使用 str_contains() 或者 strpos() 函数来判断。

本文将介绍这两个函数的用法,以及它们之间的区别和注意事项。

使用 str_contains() 函数

str_contains() 函数可以用于检查一个字符串是否包含特定字符。该函数自 PHP 8.0.0 版本开始可用。

以下是使用示例:

<?php
$str = "Hello world!";
if (str_contains($str, "world")) {
    echo "输入的字符串包含 world";
} else {
    echo "输入的字符串不包含 world";
}

输出结果为:

输入的字符串包含 world

需要注意的是,str_contains() 函数是区分大小写的,如果要忽略大小写,可以在比较时先将两个字符串全部转换为小写或大写。

使用 strpos() 函数

如果你的 PHP 版本低于 8.0.0,那么就无法使用 str_contains() 函数。不过,你可以使用 strpos() 函数来达到同样的效果。

strpos() 函数用于查找字符串中是否包含某个子字符串,如果包含,返回该子字符串第一次出现的位置,否则返回 false。

以下是使用示例:

<?php
$str = "Hello world!";
if (strpos($str, "world") !== false) {
    echo "输入的字符串包含 world";
} else {
    echo "输入的字符串不包含 world";
}

需要注意的是,strpos() 函数返回的是一个整数值,如果使用 if (strpos($str, "world")) 这样的表达式来判断是否包含,会出现判断失误的情况。因为如果 world 出现在字符串的第 0 个位置,strpos() 函数也会返回 false。

总结

本文介绍了 PHP 中判断字符串是否包含特定字符的两种方法:str_contains()strpos() 函数。两种方法各有优缺点,具体使用时需要根据实际情况选择。

建议优先使用 str_contains() 函数,因为它更加直观和易懂,而且可以在 PHP 8.0.0 以上的版本中使用。如果需要兼容更老的 PHP 版本,可以使用 strpos() 函数。