Вот функция:

function is_set($var, $placeholder = null){
    if(isset($var)){
        return $var;
    } else {
        return $placeholder;
    }
}

if($_SERVER['REQUEST_METHOD'] === 'POST')
{
    is_set($_POST['freq'], '');
}

Он возвращает " Примечание: неопределенный индекс: частота в ... ".

Пока этот код работает хорошо:

echo isset($_POST['freq']) ? $_POST['freq'] : '';

Почему это??

php
0
Rossitten 10 Ноя 2017 в 09:43

1 ответ

Лучший ответ

Сначала print_r($_POST); и проверьте, доступна ли переменная, к которой вы пытаетесь получить доступ. вы пытаетесь передать $_POST['freq']) для проверки, прежде чем проверять, существует ли переменная. исключение запускается, когда ваше выполнение достигает is_set($_POST['freq']); без параметра poast 'freq'. Попробуйте что-нибудь вроде

    if(!empty($_POST['freq'])){
        is_set($_POST['freq']);
    }

Или передать весь $_POST в функцию is_set и проверить там переменную.

1
User123456 10 Ноя 2017 в 07:09