牛骨文教育服务平台(让学习变的简单)
博文笔记

PHP 字符串的排序:strcmp()、strcasecmp()和strnatcmp()

创建时间:2017-10-25 投稿人: 浏览次数:461

PHP 字符串的排序:strcmp()、strcasecmp()和strnatcmp()

strcmp()、strcasecmp()和strnatcmp()函数可用于字符串的排序。当进行数据排序的时候,这些函数是非常有用的。

strcmp()的函数原型如下所示:

int strcmp(string str1,string str2);

该函数需要两个进行比较的参数字符串。如果这两个字符串相等,该函数就返回0,如果按字典顺序*str1在str2后面(大于str2)就返回一个正数,如果str1小于str2就返回一个负数。这个函数是区分大小写*的。

函数strcasecmp()除了不区分大小写之外,其他和strcmp()一样。

函数strnatcmp()及与之对应的不区分大小写的strnatcasecmp()将按“自然排序”比较字符串,所谓自然排序是按人们习惯的顺序进行排序。例如,strcmp()会认为2大于12,因为按字典顺序2要大于12,而strnatcmp()则是相反。

例子:

<?php

    $a1 = "312";
    $a2 = "11112";

    var_dump(strcmp($a1, $a2));

    var_dump(strnatcmp($a1, $a2));

输出:

int 1

int -1
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。