echo $begrüßung;
Mir persönlich gefällt eigentlich Variante 1 mit "fetchColumn" ganz gut.
Möglichkeit 2 ist vom Code her am aufwändigsten.
Oder besser Variante 3 mit "try" und "catch"?
Eine Fehlerbehandlung brauchst du in jedem Fall. try-catch fehlt also in den beiden anderen Varianten.
Da du die Ergebnismenge in jedem Fall brauchst, halte ich eine Extra-Zählung für weniger sinnvoll, da aus der Ergebnismenge die Anzahl der Datensätze feststellbar ist. Die abgefragte Datenmenge wird sicher auch überschaubar klein sein, so dass die Zwischenspeicherung in einem Array durch fetchAll() nicht sonderlich ins Gewicht fallen wird.
Ansonsten solltest du dir selbst ein Urteil über die beste Variante in diesem Fall bilden. Dafür kannst du zum einen Laufzeitmessungen der drei Varianten anstellen, und zum anderen den Aufwand beim Verstehen und Pflegen des jeweiligen Codestücks bewerten. Stell dir dabei vor, es sei einige Zeit vergangen, in der du nichts mit PDO zu tun hattest, und dir die genaue Arbeitsweise der verwendeten Methoden wieder entfallen ist. Kannst du dann sofort beim Anblick des Codes darauf schließen, was du damals beim Verfassen damit bezweckt hattest? Möglicherweise fehlen auch noch ein paar Kommentare, die dir beim Verständnis helfen.
echo "$verabschiedung $name";