Doctrine Common
  1. Doctrine Common
  2. DCOM-134

[GH-213] Added sort option for array collection

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      This issue is created automatically through a Github pull request on behalf of andrewtarry:

      Url: https://github.com/doctrine/common/pull/213

      Message:

      I have added a sorter class and sortBy method for the ArrayCollection class. It gives the option to reorder the ArrayCollection after someone has gotten it from the database, e.g. from a relationship. It takes an array of method names to sort by in order to priority and it takes an optional boolean to set the order to ascending. Here is an example:

      `$arraycollection->sortBy(array('getName()', 'getAddress()'));`

      It will recursively loop the collection change the order. Each time it will look to see if the previous matching option is the same as for the previous element and then store those elements in list to be reordered.

      Once it has looped all the elements it will reorder the elements it has matched and if there is another option to reorder by it will loop only the elements it matched last time so it is not looping the whole array each time.

        Activity

        Hide
        Marco Pivetta added a comment -

        Can't change because of BC, and the performance impact is too high

        Show
        Marco Pivetta added a comment - Can't change because of BC, and the performance impact is too high

          People

          • Assignee:
            Benjamin Eberlei
            Reporter:
            Benjamin Eberlei
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: