一 按字节比较
1 实例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=gb2312">
<title>应用strcmp()和strcasecmp()函数分别对两个字符串按字节进行比较</title>
</head>
<body>
<?php
$str1="今天好吗!";//定义字符串常量
$str2="今天好吗!";//定义字符串常量
$str3="gosoft";//定义字符串常量
$str4="GOSOFT";//定义字符串常量
echo strcmp($str1,$str2);//这两个字符串相等
echo strcmp($str3,$str4);//注意该函数区分大小写
echo strcasecmp($str3,$str4);//该函数不区分字母大小写
?>
</body>
</html>
2 运行结果
010
3 函数说明
int strcmp ( string $str1 , string $str2 )
注意该比较区分大小写。
参数
str1
第一个字符串。
str2
第二个字符串。
返回值
如果str1小于str2返回-1;如果str1大于str2返回1;如果两者相等,返回0。
二 按自然排序法比较
1 实例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=gb2312">
<title>应用strnatcmp()函数按自然排序法进行字符串的比较</title>
</head>
<body>
<?php
$str1="str2.jpg";//定义字符串常量
$str2="str10.jpg";//定义字符串常量
$str3="gosoft1";//定义字符串常量
$str4="GOSOFT2";//定义字符串常量
echo strcmp($str1,$str2);//按字节进行比较,返回1
echo strcmp($str3,$str4);//按字节进行比较,返回1
echo strnatcmp($str1,$str2);//按自然排序法进行比较,返回-1
echo strnatcmp($str3,$str4);//按自然排序法进行比较,返回1
?>
</body>
</html>
2 运行结果
11-11
3 函数说明
int strnatcmp ( string $str1 , string $str2 )
该函数实现了以人类习惯对数字型字符串进行排序的比较算法,这就是"自然顺序"。注意该比较区分大小写。
参数
str1
第一个字符串。
str2
第二个字符串。
返回值
与其他字符串比较函数类似,如果str1小于str2返回-1;如果str1大于str2返回1;如果两者相等,返回0。
三 指定从源字符串的位置比较
1 实例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html; charset=gb2312">
<title>应用strncmp()函数比较字符串的前2个字符是否与源字符串相等</title>
</head>
<body>
<?php
$str1="I love PHP !";//定义字符串常量
$str2="i love my student !";//定义字符串常量
echo strncmp($str1,$str2,6);//比较前两个字符
?>
</body>
</html>
2 运行结果
-1
3 函数说明
int strncmp ( string $str1 , string $str2 , int $len )
该函数与strcmp()类似,不同之处在于你可以指定两个字符串比较时使用的长度(即最大比较长度)。
注意该比较区分大小写。
参数
str1
第一个字符串。
str2
第二个字符串。
len
最大比较长度。
返回值
如果str1小于str2返回-1;如果str1大于str2返回1;如果两者相等,返回0。