Collections are definitely supported in Cassandra since version 1.2 - I don't know PHP Cassa however your statement looks correct so I'd look on the client side for the solution.
An alternative could be using a composite key in which the second part of the key is the key you wanted use in the map
CREATE TABLE mc_user(
mc_user_id uuid,
themapkey varchar,
mc_user_email varchar static,
mc_user_pwd varchar static,
mc_status varchar static,
themapvalue varchar,
PRIMARY KEY (mc_user_id, themapkey)
);
Now instead of having one entry per user with a map, you have many entries per user.
I've made the email, password and status static since they should be the same for each mc_user_id (two main advantages comes in my mind: they are not replicated in each row so they won't waste disk space and you can update them easily just with 1 update statement since static columns are accessible only by partition key).
You can still retrieve user's information (now static) only with mc_user_id
select mc_user_email, mc_status from mc_user where mc_user_id=some_id
You can retrieve a "map" entry with mc_user_id, themapkey
select themapvalue from mc_user where mc_user_id=some_id and themapkey=some_key
You can also easily rebuild all map with a select *
select * from mc_user where mc_user_id=some_id
HTH
Cheers,
Carlo