array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'de', ), 'this' => array ( 0 => 'ds-vector.sort.php', 1 => 'Ds\\Vector::sort', 2 => 'Sorts the vector in-place', ), 'up' => array ( 0 => 'class.ds-vector.php', 1 => 'Ds\\Vector', ), 'prev' => array ( 0 => 'ds-vector.slice.php', 1 => 'Ds\\Vector::slice', ), 'next' => array ( 0 => 'ds-vector.sorted.php', 1 => 'Ds\\Vector::sorted', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/ds/ds/vector/sort.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>

Ds\Vector::sort

(PECL ds >= 1.0.0)

Ds\Vector::sort Sorts the vector in-place

Beschreibung

public Ds\Vector::sort(callable $comparator = ?): void

Sorts the vector in-place, using an optional comparator function.

Parameter-Liste

comparator

Die Vergleichsfunktion muss einen Integer kleiner als, gleich oder größer als Null zurückgeben, wenn das erste Argument respektive kleiner, gleich oder größer als das zweite ist.

callback(mixed $a, mixed $b): int
Achtung

Wenn die Vergleichsfunktion nicht-ganzzahlige Werte zurückgibt, z. B. vom Typ float, wird der Rückgabewert des Callbacks intern in den Typ int umgewandelt. Werte wie 0.99 und 0.1 werden also beide in einen Integer-Wert von 0 umgewandelt, wodurch diese Werte als gleichwertig eingestuft werden.

Rückgabewerte

Es wird kein Wert zurückgegeben.

Beispiele

Beispiel #1 Ds\Vector::sort() example

<?php
$vector
= new \Ds\Vector([4, 5, 1, 3, 2]);
$vector->sort();

print_r($vector);
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

Ds\Vector Object
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

Beispiel #2 Ds\Vector::sort() example using a comparator

<?php
$vector
= new \Ds\Vector([4, 5, 1, 3, 2]);

$vector->sort(function($a, $b) {
return
$b <=> $a;
});

print_r($vector);
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

Ds\Vector Object
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)