function sort_to($field, $values, $order = "ASC") { $sorted_items = $this->_items; self::$sort_field = $field; self::$sort_values = $values; if ($order == "ASC") { usort( $sorted_items, create_function('$a,$b', 'return array_search($a->f(MEOW_FieldSetCollection::$sort_field), MEOW_FieldSetCollection::$sort_values) > array_search($b->f(MEOW_FieldSetCollection::$sort_field), MEOW_FieldSetCollection::$sort_values);')); } else { usort( $sorted_items, create_function('$a,$b', 'return array_search($b->f(MEOW_FieldSetCollection::$sort_field), MEOW_FieldSetCollection::$sort_values) < array_search($a->f(MEOW_FieldSetCollection::$sort_field), MEOW_FieldSetCollection::$sort_values);')); } return new MEOW_VirtualFieldSetCollection($sorted_items); }