Como editar o implode para que ele junte valores com duas string

Na função abaixo, uma saída possível talvez

1 day and 2 hours and 34 minutes

Minha pergunta é como edito o implode para que ele produza

1 day, 2 houts and 34 minutes

Esta é a minha função

function time_difference($endtime){
    $hours = (int)date("G",$endtime);
    $mins = (int)date("i",$endtime);

    // join the values
    $diff = implode(' and ', $diff);

    if (($hours == 0 ) && ($mins == 0)) {
        $diff = "few seconds ago";
    }
    return $diff;
}

questionAnswers(3)

yourAnswerToTheQuestion