Argumentos de función opcional de PHP con matriz. ¿Cómo codificar / Mejor manera de codificar?

Estoy seguro de que hay una mejor en esto. Cualquier ayuda será apreciada.

Quiero pasar una matriz a una función php que contiene el argumento y todos los argumentos son opcionales. Estoy usando el iniciador de códigos y de ninguna manera soy un experto. A continuación se muestra lo que he estado usando hasta ahora:

function addLinkPost($postDetailArray) {

    if (isset($postDetailArray['title'])) {
        $title = $postDetailArray['title']; }
    else {
        $title = "Error: No Title";
    }

    if (isset($postDetailArray['url'])) {
        $url        = $postDetailArray['url'];
    } else {
        $url        = "no url";
    }
    if (isset($postDetailArray['caption'])) {
        $caption    = $postDetailArray['caption'];
    } else {
        $caption    = "";
    }
    if (isset($postDetailArray['publish'])) {
        $publish    = $postDetailArray['publish'];
    } else {
        $publish    = TRUE;
    }
    if (isset($postDetailArray['postdate'])) {
        $postdate   = $postDetailArray['postdate'];
    } else {
        $postdate   = "NOW()";
    }
    if (isset($postDetailArray['tagString'])) {
        $tagString  = $postDetailArray['tagString'];
    } else {
        $tagString = "";
    }

Respuestas a la pregunta(7)

Su respuesta a la pregunta