Use neither strings nor magic numbers -- use enums.
enum struct Move { Left, Right, Up, Down };
// Overload the packet insertion and extraction operators
sf::Packet& operator<< (sf::Packet& packet, Move movement);
sf::Packet& operator>> (sf::Packet& packet, Move& movement);
// Use them
sf::Packet p;
p << Move::Left << Move::Right;
Depending on the operator implementation, a different size is used (I would recommend 8 bits). It also adds an abstraction that allows you to change the binary format without affecting the enum usage. You can also determine the underlying type directly:
enum struct Move : sf::Uint8 { ... };