protected function implode(array $list, string $conjunction = "or")
    {
        $last = array_pop($list) ?: "null";
        if ($list) {
            $glue = count($list) > 1 ? ", " : " ";
            return implode($glue, $list) . ', ' .$conjunction . ' ' . $last;
        }
        return $last;
    }
protected function implode(array $list, string $conjunction = "or")
    {
        $last = array_pop($list) ?: "null";
        if ($list) {
            $glue = count($list) > 1 ? ", " : " ";
            return implode($glue, $list) . ', ' .$conjunction . ' ' . $last;
        }
        return $last;
    }
protected function implode ( array $ list , string $ conjunction = "or" ) { $ last = array_pop ( $ list ) ? : "null" ; if ( $ list ) { $ glue = count ( $ list ) > 1 ? ", " : " " ; return implode ( $ glue , $ list ) . ', ' . $ conjunction . ' ' . $ last ; } return $ last ; }
A natural language version of implode.

@param array $list
@param string $conjunction
@return mixed|string
A natural language version of implode .