shadd Posted August 30 Share Posted August 30 i have a set of numbers that i need to arrange in ascending order: 1.1.51,1.1.51.10,1.1.51.2,1.1.51.3,1.1.51.4,..........,A,1.1.52 my problem is that 1.1.51.10 is not coming at position A where it should. how can i achieve this?? Quote Link to comment Share on other sites More sharing options...
requinix Posted August 30 Share Posted August 30 What is your code, what output do you expect to see, and what output do you actually see? Quote Link to comment Share on other sites More sharing options...
Barand Posted August 30 Share Posted August 30 Perhaps... $a = explode(',', '1.1.51,1.1.51.10,1.1.51.2,1.1.51.3,1.1.51.4,A,1.1.52'); echo 'original <pre> ' . print_r($a, 1) . '</pre>'; sort($a); echo 'after sort() <pre> ' . print_r($a, 1) . '</pre>'; natsort($a); echo 'after natsort() <pre> ' . print_r($a, 1) . '</pre>'; giving... original Array ( [0] => 1.1.51 [1] => 1.1.51.10 [2] => 1.1.51.2 [3] => 1.1.51.3 [4] => 1.1.51.4 [5] => A [6] => 1.1.52 ) after sort() Array ( [0] => 1.1.51 [1] => 1.1.51.10 [2] => 1.1.51.2 [3] => 1.1.51.3 [4] => 1.1.51.4 [5] => 1.1.52 [6] => A ) after natsort() Array ( [0] => 1.1.51 [2] => 1.1.51.2 [3] => 1.1.51.3 [4] => 1.1.51.4 [1] => 1.1.51.10 [5] => 1.1.52 [6] => A ) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.