求一算法
$str = array();
$str[] = "csdn我最喜欢了啊";
$str[] = "喜欢了";
$str[] = "有时间我也经常来这里,呵呵";
$str[] = "时间不早了?";
不知道如何实现把str数组按照数组项的字符串长度的多少从少到多来重新排序,排序函数执行之后应当是:
$str[] = "喜欢了";
$str[] = "时间不早了?";
$str[] = "csdn我最喜欢了啊";
$str[] = "有时间我也经常来这里,呵呵";
$str = array();
$str[] = "csdn我最喜欢了啊";
$str[] = "喜欢了";
$str[] = "有时间我也经常来这里,呵呵";
$str[] = "时间不早了?";
不知道如何实现把str数组按照数组项的字符串长度的多少从少到多来重新排序,排序函数执行之后应当是:
$str[] = "喜欢了";
$str[] = "时间不早了?";
$str[] = "csdn我最喜欢了啊";
$str[] = "有时间我也经常来这里,呵呵";
for($i=0;$i<count($str);$i++){
for($j=0;$j<$i;$j++){
if(strlen($str[$j])>strlen($str[$j+1])){
$temp = $str[$j];
$str[j] = $str[j+1];
$str[j+1] = $temp;
}
}
}
for($j=0;$j<$i;$j++){
if(strlen($str[$j])>strlen($str[$j+1])){
$temp = $str[$j];
$str[$j] = $str[$j+1];
$str[$j+1] = $temp;
}
}
}
$str = array();
$str[] = "csdn我最喜欢了啊";
$str[] = "喜欢了";
$str[] = "有时间我也经常来这里,呵呵";
$str[] = "时间不早了?"; function cmp($a, $b){
$lena = strlen($a);
$lenb = strlen($b);
return $lena > $lenb ? 1 : ($lena == $lenb ? 0 : -1);
}usort($str, "cmp");print_r( $str);
?>