Created
August 22, 2017 15:28
-
-
Save Ellrion/a3145621f936aa9416f4c04987533d8d to your computer and use it in GitHub Desktop.
Сортировка ассоциативного массива в порядке указанном массивом ключей.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
if (!function_exists('array_sort_by_keys_array')) { | |
/** | |
* Сортировка ассоциативного массива в порядке указанном массивом ключей. | |
* | |
* @param array $array Входной массив. | |
* @param array $sorter Массив ключей в нужном порядке. | |
* | |
* @return bool | |
*/ | |
function array_sort_by_keys_array(array &$array, array $sorter) | |
{ | |
$sorter = array_intersect($sorter, array_keys($array)); | |
$array = array_merge(array_flip($sorter), $array); | |
return true; | |
} | |
} |
Насколько обязателен return true; у функции?
Сделано так как все сортирующие функции для массивов возвращают bool значение (false в случае ошибки) а сам результат их сортировки это изменение массива. Так что эта функция написана с "сохранением стиля" так сказать.
Естественно ничего не мешает переписать ее для иного поведения.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Насколько обязателен
return true;
у функции?Имхо, он не нужен. Или я ошибаюсь?