2012-02-18 67 views
-1

我在数组中此格式的值:自定义排序数组PHP中的第一个字符

01001:Bekir 
04007:Jean 
06934:Marie 
06934:Kevin 
06934:Bernard 
01495:Silvain 
01001:Joli 

...

其中“04007:让”是一个价值

我会就像为6个第一个字符排序我的数组。例如,与06934,它会给我:

06934:Kevin 
06934:Bernard 
01495:Silvain 

,而不是

06934:Bernard  
06934:Kevin 
01495:Silvain 

这可能吗?

感谢

+0

http://php.net/strncmp – KingCrunch 2012-02-18 14:02:40

+0

在未来,我建议你看一看从一开始多维数组。 – Zar 2012-02-18 14:10:39

回答

2

你需要的是usort类型排序。使用usort你可以定义自己的比较函数中使用,例如

function first_6_chars_compare($a, $b){ 
    return strcmp(substring($a, 0, 6), substring($b, 0, 6)); 
} 

$my_array = array(); // 
... 
usort($my_array, "first_6_chars_compare"); 
+0

完美!非常感谢你 :) – 2012-02-18 21:56:49