I just want to know the differencies between multiple get inside a transaction and the getMultiple command. Are the commands sended in one time in the first case, are they queue on the server itself or on the client side ?
what is the more efficient between the two ways ?
Your interpretation is correct.
getMultiple is the MGET command in Redis (see doc here: http://redis.io/commands/mget), so it'll be sent as a single command.
Using multi()->get('x')->get('y')->...->exec() will send N packets to Redis, which is not as efficient.