La connessione viene chiusa in automatico quando l'oggetto PDO non è più referenziato oppure alla fine dello script.
Se vuoi farlo manualmente è corretto impostare la variabile contenente l'oggetto PDO a NULL, ma alcune volte non basta.

Se per esempio ci sono delle variabili che referenziano ancora l'istanza PDO questa rimane attiva fino al termine dello script, per forzarne la chiusura bisognerebbe impostare a NULL anche queste variabili. Oppure se hai un oggetto PDOStatement (magari restituito quando usi il metodo query()) dentro una variabile devi impostare anche questa a NULL, altrimenti la connessione rimane attiva.

In generale però, se non hai volumi di query importanti te ne puoi anche fregare, anche se concordo con te, quando si può ottimizzare è sempre bene farlo, purché lo sforzo sia commisurato ai benefici.