Я не знаю, если вы должны или не должны, но здесь я бы не стал.Основная причина в том, что есть хотя бы одно утверждение, которое вы можете опустить, и тогда у вас будет просто if-elseif-else
-Statement
if (empty($_GET['id'])) { /* code */ }
elseif ($_GET['id'] === '13') { /* code */ }
elseif (!empty($_GET['id'])) { /* code* }
, равное
if (empty($_GET['id'])) { /* code */ }
elseif ($_GET['id'] === '13') { /* code */ }
else { /* code* }
В блоке после этого оператор if(!$rawdata)
также дублируется.