缩小使用 sort() 函数的 PHP 代码
Minifiy a PHP code that uses the sort() function
我有这个功能,我想把它放在一行中,但我不知道如何在同一行中实现 sort()。
# Mediana x̃ de un conjunto de elementos ($e)
Mediana($e=array()){
sort($e);
return (count($e)!=0)?((count($e)%2==0)?(($e[(count($e)/2)]+$e[((count($e)/2)+1)])/2):$e[((count($e)/2)+1)]):0;
}
我不喜欢(从审美上讲)肮脏的方式:
sort($e); return (count($e)!=0)?((count($e)%2==0)?(($e[(count($e)/2)]+$e[((count($e)/2)+1)])/2):$e[((count($e)/2)+1)]):0;
如果有人能给我一些提示,我将不胜感激。
Tnx.
您可以在条件中包含 sort()
方法 returns 布尔值,在这种情况下,一旦排序的数组保持排序。
function Mediana($e = array())
{
return (count($e) != 0 && sort($e)) ? ((count($e) % 2 == 0) ? (($e[(count($e) / 2)] + $e[((count($e) / 2) + 1)]) / 2) : $e[((count($e) / 2) + 1)]) : 0;
}
或
function Mediana($e = array())
{
return (sort($e) && count($e) != 0) ? ((count($e) % 2 == 0) ? (($e[(count($e) / 2)] + $e[((count($e) / 2) + 1)]) / 2) : $e[((count($e) / 2) + 1)]) : 0;
}
我有这个功能,我想把它放在一行中,但我不知道如何在同一行中实现 sort()。
# Mediana x̃ de un conjunto de elementos ($e)
Mediana($e=array()){
sort($e);
return (count($e)!=0)?((count($e)%2==0)?(($e[(count($e)/2)]+$e[((count($e)/2)+1)])/2):$e[((count($e)/2)+1)]):0;
}
我不喜欢(从审美上讲)肮脏的方式:
sort($e); return (count($e)!=0)?((count($e)%2==0)?(($e[(count($e)/2)]+$e[((count($e)/2)+1)])/2):$e[((count($e)/2)+1)]):0;
如果有人能给我一些提示,我将不胜感激。 Tnx.
您可以在条件中包含 sort()
方法 returns 布尔值,在这种情况下,一旦排序的数组保持排序。
function Mediana($e = array())
{
return (count($e) != 0 && sort($e)) ? ((count($e) % 2 == 0) ? (($e[(count($e) / 2)] + $e[((count($e) / 2) + 1)]) / 2) : $e[((count($e) / 2) + 1)]) : 0;
}
或
function Mediana($e = array())
{
return (sort($e) && count($e) != 0) ? ((count($e) % 2 == 0) ? (($e[(count($e) / 2)] + $e[((count($e) / 2) + 1)]) / 2) : $e[((count($e) / 2) + 1)]) : 0;
}