Как правильно провалидировать поле?
давайте начнем с того, что все в _POST – строки.
поэтому все равно, что передавать – все равно придется кастить в null.
null - нельзя, ведь не пройдет проверка isset($_POST['cat'])
array_key_exists поможет