php判断一个数组是否为有序的方法

如题所述

php里判断一个数组是否为有序,可以参考以下办法:

方法一、复制数组排序后,再比较:

<?php
$array = array(1,2,5,3,4,7,8);  

$t_array = $array;
sort($t_array);

if($t_array === $array)
  echo '是有序数组。';
else
  echo '不是有序数组。';
?>


方法二、编写函数,逐一进行元素比较:

//网上代码
function JudegSortArray($array) {
  if ($array [0] > $array [1]) {
    $flag = 1;
  } else {
    $flag = 0;
  }
  $temp = $flag;
  $len = count ( $array );
  for($i = 1; $i < $len; $i ++) {
    if ($flag == 0) {
      if ($array [$i] < $array [$i + 1])
      {
        continue;
      } else {
        $flag = 1;
        break;
      }
    }
    if ($flag == 1) {
      if ($array [$i] > $array [$i + 1]) {
        continue;
      } else
      {
        $flag = 0;
        break;
      }
    }
  }
  if ($flag != $temp) {
    echo "无序数组";
  } else {
    echo "有序数组";
  }
}

$array = array(1,2,5,3,4,7,8); 
$ret = JudegSortArray ( $array );
echo $ret
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网