您的位置:首页 > 编程语言 > PHP开发

strcasecmp_strnatcmp.php

2016-05-06 16:52 627 查看
输出结果如下:

$var1 和 $var2 相同(忽略字符串的大小写)

(3)strnatcmp ()函数。该函数同strcmp 函数用法基本一致,但是比较的原则有所不同。

该函数并不是按照字典顺序排列的,而是按照“自然排序”比较字符串。所谓自然排序就是

按照人们的习惯来进行排序。例如用strcmp 函数来进行排序,“4”会大于“14”,而在现实

中,数字“14”要大于“4”,因此strnatcmp 函数是按照后者来进行比较的。

该函数声明如下:

int strnatcmp ( string str1, string str2)

实例3-19 按照自然排序进行字符串比较

本实例利用strnatcmp 函数来按照自然排序原则对字符串进行比较,如代码3-19 所示。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

 <head>

  <title> strcasecmp_strnatcmp.php </title>

  <meta charset="UTF-8">

  <meta name="Author" content="">

  <meta name="Keywords" content="">

  <meta name="Description" content="">

 </head>

 <body>

<?php

$var1 = "Hello";

$var2 = "hello";

if (strcasecmp($var1, $var2) == 0) {

echo '$var1 和 $var2 相同(忽略字符串的大小写)';

}

?>

<hr>

<?php

$arr1 = $arr2 = array("img12.png", "img10.png", "img2.png", "img1.png");

echo "正常比较:<br>";

//usort 函数表示按照指定的函数进行排序

//此处表示用strcmp 函数对数组元素进行排序

usort($arr1, "strcmp");

print_r($arr1);

echo "<br>按照自然数比较<br>";

//使用strnatcmp 函数对数组进行排序

usort($arr2, "strnatcmp");

print_r($arr2);

?>

 </body>

</html>

$var1 和 $var2 相同(忽略字符串的大小写)

正常比较:

Array ( [0] => img1.png [1] => img10.png [2] => img12.png [3] => img2.png )

按照自然数比较

Array ( [0] => img1.png [1] => img2.png [2] => img10.png [3] => img12.png ) 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: