Если вы пытаетесь установить только те параметры, которые не заданы в массиве, по умолчанию, одним из решений будет создание массива, содержащего все значения по умолчанию, а затем объединение входящего массива с массивом по умолчанию.
<?php
$defaults = array('name' => 'Anonymous','gender' => 'n/a');
$data = array_merge($defaults, $_POST);
// now data includes all the post parameters, however, those parameters that don't exist will be the default value in $data