¿Cuál es la mejor manera de verificar si algo existe con PDO [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Recuento de filas con DOP 22 respuestas

Alguien me dijo que rowCount no es seguro, así que me gustaría preguntarlo aquí, tengo 2 ejemplos y me gustaría saber cuál es la forma más segura y agradable de verificar si existe algo.

$sql = "SELECT count(*) FROM users WHERE username = 'administrator'";
$result = $db->prepare($sql);
$result->execute();
echo $result->fetchColumn() ? 'true' : 'false';

o

$sql = "SELECT username FROM users WHERE username = ?";
$result = $db->prepare($sql);
$result->execute(array('administrator'));
echo $result->rowCount() ? 'true' : 'false';

Respuestas a la pregunta(0)

Su respuesta a la pregunta