Вы также можете использовать array_intersect
для проверки массива состояний относительно ваших пользовательских состояний.Например:
$user_states = $_SESSION['_app_user']['data']['state'];
$check_states = array( 1, 6, 10 );
$matches = array_intersect(array_keys($user_states), $check_states);
if(!empty($matches))
{
echo "User has valid states: \n";
foreach($matches as $_state)
{
echo " - {$_state}\n";
}
}
else
{
echo "Sorry. Not found.";
}
Функция проверяет, совпадают ли любые два элемента в массивах, и возвращает все совпадения.Это означает, что в этом коде массив $matches
будет списком всех состояний, которые пользователь имеет и находится в вашем списке.