así que conseguimos esta función en PHPequivelant strcmp para enteros (intcmp) en PHP
strcmp(string $1,string $2) // returns -1,0, or 1;
Nos No obstante, tener un intcmp(); Así que creé uno:
function intcmp($a,$b) {
if((int)$a == (int)$b)return 0;
if((int)$a > (int)$b)return 1;
if((int)$a < (int)$b)return -1;
}
Esto simplemente se siente sucio. ¿Qué piensan todos ustedes?
esto es parte de una clase para ordenar Javascripts por un valor de pedido se ha pasado.
class JS
{
// array('order'=>0,'path'=>'/js/somefile.js','attr'=>array());
public $javascripts = array();
...
public function __toString()
{
uasort($this->javascripts,array($this,'sortScripts'));
return $this->render();
}
private function sortScripts($a,$b)
{
if((int)$a['order'] == (int)$b['order']) return 0;
if((int)$a['order'] > (int)$b['order']) return 1;
if((int)$a['order'] < (int)$b['order']) return -1;
}
....
}
¿Por qué quieres una función tal ?? –
Nos encantaría un ejemplo que muestre * por qué * (¡llámenos curiosos!). – JYelton
Entonces solo necesita eso: 'sortScripts ($ a, $ b) {return $ a- $ b; } ' Solo necesita poner $ b- $ a por tener cosas en el orden inverso. –