PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ksort> <key
Last updated: Fri, 22 Aug 2008

view this page in

krsort

(PHP 4, PHP 5)

krsort Sortiert ein Array nach Schlüsseln in umgekehrter Reihenfolge

Beschreibung

bool krsort ( array &$array [, int $sort_flags ] )

Sortiert ein Array nach Schlüsseln in umgekehrter Reihenfolge, wobei die Zuordnungen zwischen Schlüssel und Wert erhalten bleiben. Dies ist hauptsächlich bei assoziativen Arrays hilfreich.

Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.

Beispiel #1 krsort()

<?php
$fruits 
= array("d"=>"Zitrone""a"=>"Orange""b"=>"Banane""c"=>"Apfel");
krsort ($fruits);
foreach (
$fruits as $key => $val) {
    echo 
"$key = $val\n";
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

d = Zitrone
c = Apfel
b = Banane
a = Orange

Sie können das Verhalten der Sortierung mittels dem optionalen Parameter sort_flags beeinflussen, für Details siehe sort().

Siehe auch asort(), arsort(), ksort(), sort(), natsort() und rsort().



ksort> <key
Last updated: Fri, 22 Aug 2008
 
add a note add a note User Contributed Notes
krsort
08-Aug-2005 03:37
To create a natural reverse sorting by keys, use the following function:

<?php
function natkrsort($array)
{
   
$keys = array_keys($array);
   
natsort($keys);

    foreach (
$keys as $k)
    {
       
$new_array[$k] = $array[$k];
    }
  
   
$new_array = array_reverse($new_array, true);

    return
$new_array;
}
?>
peter at pmkmedia dot com
07-Nov-2003 10:51
Best deal sorting:

This is a function that will sort an array with integer keys (weight) and float values (cost) and delete 'bad deals' - entries that are more costly than other entries that have greater or equal weight.

Input: an array of unsorted weight/cost pairs
Output: none

function BEST_DEALS($myarray)
{   // most weight for least cost:
    // © Peter Kionga-Kamau, http://www.pmkmedia.com
    // thanks to Nafeh for the reversal trick
    // free for unrestricted use.
    krsort($myarray, SORT_NUMERIC);
    while(list($weight, $cost) = each($myarray))
    {   // delete bad deals, retain best deals:
        if(!$lastweight)
        {
            $lastweight=$weight;
            $lastcost = $cost;
        }
        else if($cost >= $lastcost) unset($myarray[$weight]);
        else
        {
            $lastweight=$weight;
            $lastcost = $cost;
        }
    }
    ksort($myarray);
}
lolo at phpheaven dot net
28-Nov-2000 09:33
If you want to emulate the krsort function for an older version of php, you can use this piece of code:

function KeyComp($a, $b)
{  
  return -(strcmp($a,$b));
}

function krsort($MyArray)
{
  uksort($MyArray, "KeyComp");
}

Maybe obvious and useless, but who knows...

ksort> <key
Last updated: Fri, 22 Aug 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites