@JTester

Как найти юзера и как узнать где меньше юзеров?

Здравствуйте! Есть вот такой массив
$arr = [
            'test1' => ['users' => ['test']],
            'test2' => ['users' => []],
            'test3' => ['users' => []],
            'test4' => ['users' => []]
        ];

Как мне найти в этом массиве test и получит ключ самого этого массива, то есть, если у меня 'test' в массиве 'test1' то нужно вывести этот тест1.

Ещё такой вопрос, как в этих массивах найти где меньше всего пользователей и получить снова ключ, чтобы добавить его в массив users
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега PHP
♬♬
$search = 'test';

$contains = array_keys(array_filter($arr, function($item) use ($search) { return in_array($search, $item['users']); }));

print_r($contains);  // ['test1']


Ключ одного из содержащих самый короткий подмассив 'users':
$keys = array_keys($arr);
usort($keys, function($a, $b) use ($arr) {
    return count($arr[$a]['users']) - count($arr[$b]['users']);
});

$shortest = $keys[0];
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы