Il s'avère que ce sont des objets normaux et vous pouvez y accéder via user_id .
RowDataPacket est en fait le nom de la fonction constructeur qui crée un objet, il ressemblerait à ceci new RowDataPacket(user_id, ...) . Vous pouvez vérifier en accédant à son nom [0].constructor.name
Si le résultat est un tableau, vous devrez utiliser [0].user_id .