📅  最后修改于: 2023-12-03 15:37:26.178000             🧑  作者: Mango
在 PHP 中,可以使用多种方法来查找一个字符串中是否包含另一个字符串。以下是一些常用的方法:
strpos()
函数可以在一个字符串中查找另一个字符串,并返回第一次出现字符串的位置。如果没有找到,将返回 false
。
$haystack = 'This is a string';
$needle = 'is';
if (strpos($haystack, $needle) !== false) {
echo "Found $needle in $haystack";
} else {
echo "Didn't find $needle in $haystack";
}
这里,我们在 $haystack
字符串中查找 $needle
字符串。由于 $needle
存在于 $haystack
中,因此输出结果将是:
Found is in This is a string
strstr()
函数也可以查找一个字符串中的子串,但与 strpos()
函数不同,它会返回从匹配位置到字符串末尾的所有字符。
$haystack = 'This is a string';
$needle = 'is';
if (strstr($haystack, $needle)) {
echo "Found $needle in $haystack";
} else {
echo "Didn't find $needle in $haystack";
}
这里,我们仍然在 $haystack
字符串中查找 $needle
子串,但与前一个例子不同的是,我们使用 strstr()
函数来实现。由于 $needle
存在于 $haystack
中,因此输出结果将是:
Found is a string in This is a string
preg_match()
函数可以使用正则表达式在字符串中查找模式。如果找到模式,则返回 1
。如果没有找到模式,则返回 0
。
$string = 'This is a 123 string';
$pattern = '/\d/';
if (preg_match($pattern, $string)) {
echo "Found a digit in $string";
} else {
echo "Didn't find a digit in $string";
}
这里,我们在 $string
字符串中查找数字。由于 $string
中存在数字,因此输出结果将是:
Found a digit in This is a 123 string
在 PHP 中,有多种方法可以查找一个字符串中是否包含另一个字符串。选择正确的方法取决于您的需求和所使用的字符串。在本文中,我们介绍了 strpos()
、strstr()
和 preg_match()
函数,您可以根据需要选择其中之一。