Forum und email

natcasesort

(PHP 4, PHP 5)

natcasesort — Zoradiť pole podľa case nesenzivneho algoritmu "natural order"

Popis

void natcasesort ( array $pole )

Táto funkcia implementuje zoraďovací algoritmus, ktorý zoraďuje alfanumerické reťazce spôsobom, akým by to robil človek zatiaľčo sa zachovajú asociácie kľúč/dodnota. Hovorí sa tomu "prirodzené zoraďovanie".

natcasesort() je case nesenzitivne verzia natsort(). Príklad rozdielu medzi týmto algoritmom a bežnými algoritmami zoradenia počítača je uvedený v natsort().

Example#1 natcasesort() príklad

<?php
$array1 
$array2 = array('IMG0.png''img12.png''img10.png''img2.png''img1.png''IMG3.png');

sort($array1);
echo 
"Standardné zoradovanie\n";
print_r($array1);

natcasesort($array2);
echo 
"\nPrirodzene zoradovanie (case-nesenzitivne)\n";
print_r($array2);
?>

Horeuvedený kód vygeneruje následujúci výstup:

Standardne zoradovanie
Array
(
    [0] => IMG0.png
    [1] => IMG3.png
    [2] => img1.png
    [3] => img10.png
    [4] => img12.png
    [5] => img2.png
)

Prirodzene zoradovanie (case-nesenzitivne)
Array
(
    [0] => IMG0.png
    [4] => img1.png
    [3] => img2.png
    [5] => IMG3.png
    [2] => img10.png
    [1] => img12.png
)

Viac informácii na stránke Martin Pool's » Reťazcové porovnávanie prirodzeného poradia Martina Poola.

Tiež pozri sort(), natsort(), strnatcmp() a strnatcasecmp().