Made sort much faster by using builtin php methods. Currently, we sort via
usort in PHP. This is quite slow especially when we sort many rows, eg 25k rows or more. The time needed to sort depends a lot on the data, the column to sort, etc. that's why it is hard to say how much performance improvement we will gain. On 25k rows it can drop from eg before about 900ms to 500ms.
As I side effect I fixed many bugs that were in the previous sort filter implementation, the code is much better tested and it does now use a secondary column on nb_visits or label if possible. refs #7401
Some of the fixed bugs include:
falsefor the selected column.
We need to wait till we drop support for PHP 5.3 since the sort flags
SORT_FLAG_CASE were added in PHP 5.4 which this pull request requires.
I will issue a new PR as there is now a branch for Piwik 3.0 which supports PHP 5.4+