如何在PHP中按字母顺序比较2个字符串?

时间:2009-10-20 15:21:06

标签: php string sorting

标题是什么。特别是如果我有

$array1['name'] = 'zoo';
$array2['name'] = 'fox';

如何确定字母$array2的名称应高于$array1

5 个答案:

答案 0 :(得分:87)

使用strcmp。如果strcmp的第一个参数按字典顺序小于第二个参数,则返回的值将为负数。如果两者相等,那么它将返回0.如果第一个在字典上大于第二个,那么将返回一个正数。

NB。您可能想要使用strcasecmp(string1,string2),这会忽略大小写......

答案 1 :(得分:11)

您可以将这两个字符串与strcmp进行比较:

  

返回< 0如果 str1 小于 str2 ; >如果 str1 大于 str2 则为0,如果它们相等则为0。

答案 2 :(得分:6)

我有点晚了(然后我在2009年还不是程序员:-)还没有人提到这个,但你也可以简单地使用你在数字上使用的运算符。

< > <= >= == !=以及更多

例如:

'a' > 'b'返回false

'a' < 'b'返回true

http://php.net/manual/en/language.operators.comparison.php

重要

有一个缺陷,您可以在下面的评论中找到。

答案 3 :(得分:1)

sort

EDIT刚刚实现了来自不同数组的值,可以先array_merge但不能确定你想要的是什么

答案 4 :(得分:1)

我经常使用natsortNatural Sort),因为我通常只想保留数组以备日后使用。

示例:

natsort($unsorted_array);

var_dump($usorted_array); // will now be sorted.