Even if documentation says that $cmp_function must be a string, this method works with a Callable also.
Example:
<?php
$iterator->uasort([$this, 'usort']); // 'usort' here is a method in the same class
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayIterator::uasort — Sort with a user-defined comparison function and maintain index association
This method sorts the elements such that indices maintain their correlation with the values they are associated with, using a user-defined comparison function.
Bilginize:
İki üye karşılaştırıldığında eşitse bunların özgün sıralamadaki yerleri korunur. PHP 8.0.0 öncesinde sıralı dizideki göreli yerleri tanımsızdı.
callback
Karşılaştırma işlevinin, ilk bileşeninin ikinci bileşenden küçük, eşit veya büyük olması durumunda sıfırdan küçük, eşit veya büyük bir tamsayı döndürmesi gerekir.
Karşılaştırma işlevinden float gibi
tamsayı olmayan değerlerin döndürülmesi, geri çağırım
işlevinin dönüş değerinin dahili olarak int türüne
dönüştürülmesiyle sonuçlanır. Bu nedenle 0.99
ve
0.1
gibi değerlerin her ikisi de 0
tamsayı değerine dönüştürüp bunlar eşit değerler olarak karşılaştırılacaktır.
Daima true
döndürür.
Even if documentation says that $cmp_function must be a string, this method works with a Callable also.
Example:
<?php
$iterator->uasort([$this, 'usort']); // 'usort' here is a method in the same class