PHP Centeri avaleht Skriptikogu Küsimuste-vastuste leht Teadete vaatamine ja saatmine Foorum - koht küsimiseks Otsingumootor Siit saad infot meie kohta

Kasutajanimi:  
  Parool: 
  Registreeri!   Unustasid salasõna?

 Skriptid (427) 

 Bannerisüsteemid
 E-kaardid
 E-maili saatmine
 E-poed
 Failihaldus
 Flash ja PHP
 Foorumid
 Jututoad
 Kalendrid
 Kalkulaatorid
 Kellad
 Klikilugejad
 Kommentaarid
 Külalisteraamatud
 Küsitlused
 Lehe turvamine
 Lingikogud
 Mängud
 Otsingusüsteemid
 Pildid ja PHP
 Shoutboxid
 Sisuhaldussüsteemid
 Statistika
 Suunamine
 Templeidisüsteemid
 Testid
 Uudised
 Uudistelistid
 Varia


 Otsing 

 

 Utiliidid 

 Kes on kus
 Kasutajate info
 Küsitlused
 PHP manuaal
 Õpetused
 Jututuba
 Lingikogu
 Lemmikskriptid


 PHP manuaal: usort
Autor: erkkis
13. veebruar 2002
usort

usort -- sordib massiivi väärtuste järgi kasutades kasutaja poolt defineeritud võrdlusfunktsiooni

(PHP 3>= 3.0.3, PHP 4 >= 4.0.0)

See funktsioon sordib massiivi väärtused kasutades kasutaja poolt lisatud võrdlusfunktsiooni. Kui sorditavat massiivi tuleb sortida mingil erilisel kriteeriumil, peaksid kasutama seda funktsiooni.

Võrdlusfunktsioon peab väljastama arvu, mis peab olema väiksem, võrdne või suurem kui null, kui esimene argument on väiksem, võrdne või suurem kui teine. Kui kaks liiget on võrdsed, on sortimise järjekord formuleerimata.


1. näide: funktsiooni usort() näide
PHP kood:


function cmp ($a$b) {
    if (
$a == $b) return 0;
    return (
$a $b) ? -1;
}

$a = array (32561);

uksort ($a"cmp");

while (list (
$voti$vaartus) = each ($a)) {
    echo 
"$voti: $vaartus\n";
}


Selline kood väljastaks:
Koodijupp:
0: 6
1: 5
2: 3
3: 2
4: 1



Märkus: sellisel sortimisel on kohasemaks funktsiooniks rsort().

2. näide: funktsiooni usort() näide kasutades mitmemõõtelist massiivi
PHP kood:


function cmp ($a$b) {
    return 
strcmp($a["puuvili"], $b["puuvili"]);
}

$puuviljad[0]["puuvili"] = "sidrunid";
$puuviljad[1]["puuvili"] = "õunad";
$puuviljad[2]["puuvili"] = "viinamarjad";

usort($puuviljad"cmp");

while (list (
$voti$vaartus) = each ($puuviljad)) {
    echo 
"\$puuviljad[$voti]: " $vaartus["puuvili"] . "\n";
}



Kasutades mitmemõõtelist massiivi, $a ja $b sisaldavad viidet esimelele loendile massiivis.

Selline kood väljastaks:
Koodijupp:
$puuviljad[0]: sidrunid
$puuviljad[1]: viinamarjad
$puuviljad[2]: õunad



3. näide: funktsiooni usort() näide kasutades objekti kasutajafunktsiooni
PHP kood:


class TestObj {
    var 
$nimi;

    function 
TestObj($nimi)
    {
        
$this->nimi $nimi;
    }

    
/* See on statistiline võrdlusfunktsioon: */
    
function cmp_obj($a$b)
    {
        
$al strtolower($a->nimi);
        
$bl strtolower($b->nimi);
        if (
$al == $bl) return 0;
        return (
$al $bl) ? +: -1;
    }
}

$a[] = new TestObj("c");
$a[] = new TestObj("b");
$a[] = new TestObj("d");

uasort($a, array ("TestObj""cmp_obj"));

foreach (
$a as $asi) {
    print 
$asi->nimi."\n";
}



See väljastaks:
Koodijupp:
b
c
d



Vaata ka funktsioone arsort(), asort(), ksort(), natsort(), rsort(), sort(), uasort(), uksort().

 Teised viimati lisatud funktsioonid:
 extension_loaded Tuvastab kas laiendusmoodul on laetud või ei
 include_once lisab (e arvab kaasa) ja arendab määratud faili ühekordselt
 require_once lisab (e arvab kaasa) ja arendab määratud faili ühekordselt
 require lisab (e arvab kaasa) ja arendab määratud faili
 include lisab (e arvab kaasa) ja arendab määratud faili
 dbase_pack pakib dbase andmebaasi
 dbase_open avab dbase andmebaasi
 dbase_numrecords leiab, kui palju kirjeid dbase andmebaasis on
 dbase_numfields leiab, palju välju dbase andmebaasis on
 dbase_get_record loeb kirje dbase andmebaasist

Avaleht   -    Skriptikogu   -    Teated   -    Foorum   -    Reklaam   -    Tagasiside   -    Kasutamise reeglid

© Copyright 2002-2019 PHP Center. Kõik õigused reserveeritud.