您的位置:

php字符串模糊比较,php模糊匹配

本文目录一览:

php关于字符串比较的问题

php是弱类型语言,和java不同任何类型的变量都会被php自动转换成相符合的

不同变量类型进行比较的时候,PHP有内部机制进行转换,再加以比较。

0=='G'

是把‘G''转化成整型再进行比较,'G'转成整型是默认值0,所以结果就是 true 了。

但如果'1 G'转换,就会是值1

如果不熟悉内部机制,在比较之前,尽量自己转化为相同类型再进行比较。

比较安全的做法就是用 === (三个等于号),这样不仅比较内容,还比较类型,如果类型不一致就按 false 处理。

PHP中strcmp()和strcasecmp()函数字符串比较用法分析

本文实例讲述了PHP中strcmp()和strcasecmp()函数字符串比较用法。分享给大家供大家参考,具体如下:

一、PHP中strcmp()函数用于比较两个字符串(区分大小写),其定义如下:

strcmp(string1,string2)

参数说明:

string1

必需。规定要比较的第一个字符串。

string2

必需。规定要比较的第二个字符串。

PS:strcmp()函数与

strncmp()

函数类似,不同的是,strncmp()可以指定每个字符串用于比较的字符数。

二、PHP中strcasecmp()函数比较两个字符串(不区分大小写),其定义如下:

strcasecmp(string1,string2)

参数说明:

string1 必需。规定要比较的第一个字符串。

string2 必需。规定要比较的第二个字符串。

PS:strcasecmp()函数与

strncasecmp()

函数类似,不同的是,strncasecmp()可以指定每个字符串用于比较的字符数。

示例代码:

?php

$str1="脚本之家";

$str2="脚本之家";

$str3="";

$str4="";

echo

strcmp($str1,$str2);//两个字符串相等

echo

"br/";

echo

strcmp($str3,$str4);//注意该函数区分大小写

echo

"br/";

echo

strcasecmp($str3,$str4);//该函数不区分大小写

?

运行结果如下:

1

补充:关于返回值问题

针对参数string1与string2的比较:

如果两个字符串相等,则返回值为

如果

string1

小于

string2,则返回值小于0

如果

string1

大于

string2,则返回值大于0

希望本文所述对大家PHP程序设计有所帮助。

php如何模糊查询字符串? - 技术问答

可以用PHP里的strpos函数,这个函数可以实现你的要求,如:$str_add = \'中国人民银行\';

function fun($str1,$str2)

if(strpos($str1,$str2)!==-1) {

echo "true";

}

fun($str_add1,'银行');

这个函数就实现了你想要的功能了