ID: 19617 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Feedback -Bug Type: Scripting Engine problem +Bug Type: Arrays related Operating System: Unix PHP Version: 4.2.0 New Comment:
Please provide a short (!) complete and self-containing example script. You should also try with the 4.2.3 release. Previous Comments: ------------------------------------------------------------------------ [2002-09-26 10:13:43] [EMAIL PROTECTED] Using array_multisort in a function don't work if the array is "global" (you can paste the following code) : <HTML> <HEAD> <TITLE></TITLE> </HEAD> <body> <? function t() { global $row; $file = fopen("file.txt","r") or die; while (!feof($file)) { $row[] = fgetcsv($file,80,";"); } /* $row[] like this Array ( [0] => Array ( [0] => 406 [1] => xxxxxxxxxxxxxxxxxxxx [2] => 5,72 ) [1] => Array ( [0] => 001 [1] => zzzzzzzzzzzzzzzzzzzzz [2] => 5,77 ) [2] => Array ( [0] => 402 [1] => aaaaaaaaaaaaaaaaaaaaa [2] => 13,71 ) [3] => Array ( [0] => 009 [1] => fffffffffffffffffffff [2] => 7,61 ) ) I want to sort it on aaa.../fff.../xxx.../zzz... */ fclose($file); foreach ( $row as $value ) { $sortarray[] = $value[1]; } /* $sortarray like this Array ( [0] => xxxxxxxxxxxxxxxxxxxx [1] => zzzzzzzzzzzzzzzzzzzz [2] => aaaaaaaaaaaaaaaaaaaa [3] => ffffffffffffffffffff ) */ // I try to use array_multisort($row,$sortarray); too array_multisort($sortarray,$row); print_r($row); // no change for $row[], until i remove global for $row; echo "<br>"; print_r($sortarray); /* $sortarray[], now like this Array ( [0] => aaaaaaaaaaaaaaaaaaaa [1] => ffffffffffffffffffff [2] => xxxxxxxxxxxxxxxxxxxx [3] => zzzzzzzzzzzzzzzzzzzz ) or no change if set to global too. */ } t(); ?> </body> </HTML> ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=19617&edit=1