strcmp等价于PHP中的整数(intcmp) [英] strcmp equivelant for integers (intcmp) in PHP
本文介绍了strcmp等价于PHP中的整数(intcmp)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我们在PHP中有这个函数
So we got this function in PHP
strcmp(string $1,string $2) // returns -1,0, or 1;
我们不是有一个intcmp所以我创建了一个:
We Do not however, have an intcmp(); So i created one:
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;
}
这只是感觉很脏。
这是通过传入的顺序值对Javascript进行排序的类的一部分。
this is part of a class to sort Javascripts by an ordering value passed in.
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;
}
....
}
推荐答案
使用以下格式对数据排序:
Sort your data with:
function sortScripts($a, $b)
{
return $a['order'] - $b['order'];
}
如果您想要相反的顺序,请使用$ b- $ a。
Use $b-$a if you want the reversed order.
如果有问题的数字超过PHP的整数范围, return($ a 更健壮。
If the numbers in question exceed PHP's integer range, return ($a < $b) ? -1 : (($a > $b) ? 1 : 0)
is more robust.
这篇关于strcmp等价于PHP中的整数(intcmp)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文