• 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

     
    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 = "cfdocexamples">
    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")>
    ...
    

    Name of an array

    ARRAY  

     - aabzABZ, if sort_order = "asc" (ascending sort)

     - ZBAzbaa, if sort_order = "desc" (descending sort)

     - aAaBbBzzZ, in an ascending sort; preserves original intra-letter order

     - ZzzBbBaAa, in a descending sort; reverses original intra-letter order

    SORT_TYPE  

     - aabzABZ or aAaBbBzzZ, depending on value of sort_type, for letters

     - from smaller to larger, for numbers

     - ZBAzbaa or ZzzBbBaAa, depending on value of sort_type, for letters

     - from larger to smaller, for numbers

    SORT_ORDER