что такое shorted if else block для этого. Я видел его где-то раньше, но не могу его запомнить.
if (isset($_POST['value')){ $value = $_POST['value']; } elseif (isset($_GET['value'])){ $value = $_GET['value']; } else { $value = ''; } Вы имеете в виду использование глобального массива $ _REQUEST вместо проверки как $ _POST, так и $ _GET? Если это так, это должно быть:
 if(isset($_REQUEST['value'])) { $value = $_REQUEST['value']; }else $value = ''; 
Или тройная форма:
 $value = isset($_REQUEST['value']) ? $_REQUEST['value'] : ''; 
 $value = filter_input(FILTER_POST, 'value') ?: filter_input(FILTER_GET, 'value'); 
Или, если вам нужно получить несколько переменных, сделайте следующее:
 $input = $_POST + $_GET + $defaults; $value = $input['value']; 
  (Оператор + не переопределяет существующие ключи в левом массиве; в этом случае он работает как array_merge($defaults, $_GET, $_POST) .)