Monday, February 7, 2011

php $_GET sort problem

here is the input i am getting from my flash file

process.php?Q2=898&Aa=Grade1&Tim=0%3A0%3A12&Q1=908&Bb=lkj&Q4=jhj&Q3=08&Cc=North%20America&Q0=1

and in php i use this code foreach ($_GET as $field => $label) { $datarray[]=$_GET[$field];

echo  "$field :";
echo $_GET[$field];;
echo "<br>";

i get this out put

Q2 :898 Aa :Grade1 Tim :0:0:12 Q1 :908 Bb :lkj Q4 :jhj Q3 :08 Cc :North America Q0 :1

now my question is how do i sort it alphabaticaly so it should look like this Aa :Grade1 Bb :lkj Cc :North America Q0 :1 Q1 :908

and so on....before i can insert it into the DB

  • ksort($_GET);
    

    This should sort the $_GET array by it's keys. krsort for reverse order.

    From terminus
  • what you're looking for is ksort. Dig the PHP manual! ;)

  • To get a natural sort by key:

    function knatsort(&$karr){
        $kkeyarr = array_keys($karr);
        natsort($kkeyarr);
        $ksortedarr = array();
        foreach($kkeyarr as $kcurrkey){
            $ksortedarr[$kcurrkey] = $karr[$kcurrkey];
        }
        $karr = $ksortedarr;
        return true;
    }
    

    Thanks, PHP Manual!

    foreach ($_GET as $key => $value) {
     echo $key.' - '.$value.'<br/>';
    }
    

0 comments:

Post a Comment