Я создал метод для сортировки массива со значениями, как эти: array('regdate','birthday','editdate')
, которые должны сортировать элементы таким образом, что элементы, содержащие дату слова должны быть перемещены влево, как этот array('regdate','editdate','birthday')
Как отсортировать массив подстрокой? (РНР)
public function sortColumnsBySubstring($haystack, $substr){
if ($haystack == $substr) {
return 0;
}
return strpos($substr) !== false ? -1 : 1;
}
Однако это мне не ясно, как это сделать. Пример, который я нашел в php manual, показывает функцию без аргументов или замыканий - я использую версию php 5.2, поэтому я не могу использовать закрытие.
Все, что я могу придумать, это usort($date_cols, $this->sortColumnsBySubstring($value, 'date')
, но здесь значение $ undefined, так что это не решение.
Вопрос в том, как реализовать функцию для правильной работы?
Может быть, [это] (http://stackoverflow.com/questions/8230538/pass-extra-parameters-to-usort-callback) может помочь тебе. – Muriano
Возможный дубликат [Как передать параметр usort()?] (Http://stackoverflow.com/questions/29823045/how-to-pass-usort-a-parameter) – Muriano
https://3v4l.org/eVP1P проверьте это – Ali