All pastes #421502 Raw Edit

Mine

public text v1 · immutable
·published 2007-04-02 21:30 UTC
rendered paste body
/// Returns 1 if $str1 comes before $str2 alphabetically
// Returns -1 if $str1 comes after $str2 alphabetically
// Returns 0 if $str1 and $str2 are the same
function orderAlpha ( $str1, $str2 ) {
   $limit = null;

   if ( strlen( $str1 )# > strlen( $str2 ) ) {
      $limit  = strlen( $str2 );
   } else {
      $limit = strlen( $str1 );
   }

   for ( $i = 0;$i < $limit;$i++ ) {
      if ( substr( $str1, $i, 1 ) > substr( $str2, $i, 1 ) ) {
         return 1;
      } else if ( substr( $str1, $i, 1 ) < substr( $str2, $i, 1 ) ) {
         return -1;
      }
   }

   if ( strlen( $str1 ) > strlen( $str2 ) ) {
      return 1;
   } else if ( strlen( $str1 ) < strlen( $str2 ) ) {
      return -1;
   }

   return 0;
}

// Case insensitive version of orderAlpha
function orderiAlpha ( $str1, $str2 ) {
   return orderAlpha( strtolower( $str1 ), strtolower( $str2 ) );
}