• ColdFusion MX returns d,b,A,a,a
  • Earlier ColdFusion releases return d,b,a,a,A
  • ArraySort  
    Description
    Sorts array elements numerically or alphanumerically.
     
    Returns
    True, if sort is successful; False, otherwise.
     
    Category
    Array functions, List functions
     
    Function syntax
    ArraySort(array, sort_type [, sort_order ])
    
     
    History
    ColdFusion MX:
    • Changed thrown exceptions: this function can throw the ArraySortSimpleValueException error and ValueNotNumeric error.
    • Changed the order in which sorted elements are returned: in a textnocase, descending sort, this function might return elements in a different sort order than in earlier releases. If sort_type = "textnocase" and sort_order = "desc", ColdFusion MX processes elements that differ only in case differently from earlier releases, as follows:
      • ColdFusion MX reverses the elements' original order
      • Earlier releases of ColdFusion do not change the elements' original order
    For example, in a textnocase, desc sort of d,a,a,b,A, the following occurs:
     
    Parameters
     
    Parameter      Description
    array Name of an array
    sort_type numeric: sorts numbers
      text: sorts text alphabetically, taking case into account (also known as case
      sensitive). All letters of one case precede the first letter of the other case:
      - aabzABZ, if sort_order = "asc" (ascending sort)
      - ZBAzbaa, if sort_order = "desc" (descending sort)
      textnocase: sorts text alphabetically, without regard to case (also known as
      insensitive).A letter in varying cases precedes the next letter:
      - aAaBbBzzZ, in an ascending sort; preserves original intra-letter order
      - ZzzBbBaAa, in a descending sort; reverses original intra-letter order
    sort_order asc - ascending sort order. Default.
      - aabzABZ or aAaBbBzzZ, depending on value of sort_type, for letters
      - from smaller to larger, for numbers
      desc - descending sort order.
      - ZBAzbaa or ZzzBbBaAa, depending on value of sort_type, for letters
      - from larger to smaller, for numbers
     
    Throws
    If an array element is other than a simple element, this function throws an ArraySortSimpleValueException error. If sort_type is numeric and an array element is not numeric, this function throws a ValueNotNumeric error.
     
    Example
    <!--- This example shows ArraySort --->
    <cfquery name = "GetEmployeeNames" datasource = "cfsnippets">
    SELECT FirstName, LastName FROM Employees
    </cfquery>
    <!--- create an array --->
    <cfset myArray = ArrayNew(1)>
    <!--- loop through the query and append these names successively to the last
    element --->
    <cfloop query = "GetEmployeeNames">
       <cfset temp = ArrayAppend(myArray, "#FirstName# #LastName#")>
    </cfloop>
    <!--- show the resulting array as a list --->
    <cfset myList = ArrayToList(myArray, ",")>
    <!--- sort that array descending alphabetically --->
    <cfset isSuccessful = ArraySort(myArray, "textnocase", "desc")>
    ...
    
    array  
    Name of an array
    sort_type  
    • numeric: sorts numbers
    • text: sorts text alphabetically, taking case into account (also known as case sensitive). All letters of one case precede the first letter of the other case:
     - aabzABZ, if sort_order = "asc" (ascending sort)
     - ZBAzbaa, if sort_order = "desc" (descending sort)
    • textnocase: sorts text alphabetically, without regard to case (also known as case-insensitive). A letter in varying cases precedes the next letter:
     - aAaBbBzzZ, in an ascending sort; preserves original intra-letter order
     - ZzzBbBaAa, in a descending sort; reverses original intra-letter order
    sort_order  
    • asc - ascending sort order. Default.
     - aabzABZ or aAaBbBzzZ, depending on value of sort_type, for letters
     - from smaller to larger, for numbers
    • desc - descending sort order.
     - ZBAzbaa or ZzzBbBaAa, depending on value of sort_type, for letters
     - from larger to smaller, for numbers