Meaning: In the context of hair cuts specifically, you can use both without concerns as it is (usually) obvious that people get their hair done by others. (Unless it's very obvious someone did it themselves :))
However, in other situations (especially formal) I would be a little bit more attentive to which one of those I use:
Hey Sam, what about the mail I asked to be sent by this afternoon?
If Sam did it himself, he'd usually say:
I got it done
(If Sam doesn't have to use either of "got it/had it" he'd just say "I did it/I sent it" to avoid any potential confusion)
If Sam had someone do it for him, he'd usually say:
Don't worry, I had that one done / I had it done / I had it sent
Or
I got someone to do it for me
(more casually: I got someone to do it)
"Got it done" usually means that the speaker carried the action himself. "Had it done" almost always means that someone else had done it on the speaker's behalf.
Formality: "I got my hair cut" is the more casual way to phrase it.
2
The potential semantic distinction (*to have something done* usually implies someone else will do it for you; *to get it done* implies nothing about whether it'll be done by you or someone else) was covered in this ELU question.
– FumbleFingers Reinstate Monica – 2015-04-17T14:56:56.333@FumbleFingers I've a question on your comment, especially as to what you said that 'to have something done' usually implies that 'someone else will do it for you'. That said, as you didn't say exclusively, there might be some sentences in which the structure could be implied to mean 'i myself will do it (for myself)' as in 'I will have my homework finished by tomorrow'? To me, the implication of the structure seems to be different in accordance with usage. – Glittering river – 2018-11-06T16:06:40.133
1@SIS: Suppose your boss at work was complaining that you didn't hand in your weekly timesheet yesterday. You might say Sorry about that. I'll have it done tomorrow - which certainly wouldn't be taken as implying that you intended to get someone else to do your timesheet for you. As you say, "usage" (what I'd call *context* or *pragmatics*) can make a lot of difference to what any given utterance means (it's not all about the words themselves). – FumbleFingers Reinstate Monica – 2018-11-06T17:28:45.307