Задать вопрос
@Mixa

Существует ли функция, спобная проверить наличие любой комбинации из трех get-переменных?

У меня есть страница, формирующая запрос на основе неперданых get-переменных.

например

$a
$b
$c

мне надо в целях безопасности пропускать только их и никакие другие переменные + надо построить чекер который возвращал бы true когда есть все три переменные (комбинация номер 1) либо какая-либо комбинация двух из трех переменных (а таких - еще четыре).

подумал, что было бы круто, если была функция для подобной проверки типа в коротую забил массив переменных и минимальное количество переменных, которые одновременно должны пристувовать.
  • Вопрос задан
  • 104 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
miraage
@miraage
Старый прогер
<?php

$arrays = [
  [
    'foo' => 'bar',
    'bar' => 'baz',
    'baz' => 'foo',
  ],
  [
    'foo' => 'bar',
    'baz' => 'foo',
  ],
  [
    'foo' => 'bar',
    'bar' => 'baz',
  ],
];

function check_keys(array $input, array $keys)
{
  return array_intersect($keys, array_keys($input)) === $keys;
}

var_dump(check_keys($arrays[0], ['foo', 'baz', 'bar']));
var_dump(check_keys($arrays[1], ['foo', 'baz']));
var_dump(check_keys($arrays[2], ['foo', 'bar']));
var_dump(check_keys($arrays[2], ['baz', 'bar']));


bool(true)
bool(true)
bool(true)
bool(false)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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