The standard way would be adding it to HL. After clearing HL that is.
LD HL,0
ADD HL,SP
Voila.
This is not only already available with the 8080,
DAD SP ; Same opcode (39h), same workings
thus preferable, but as well very handy when setting up a pointer to parameters on stack as, of course, any other constant than 0 can be used and added.
Now, the Z80 did in addition bring a way to store SP with the ED group:
LD (loc),SP
With 4 bytes (ED 73 ll hh) it's as long as the LD/ADD sequence and only one T-cycle faster (20 vs. 21) while restricting the store to a fixed address, which may not be always handy - accessing SP is quite often done during task switch or alike where hard coded addresses are a bad idea.
LD SP,nn
,LD SP,(mem)
andLD (mem),SP
.