How long have you learnt English is wrong. You should stick with the progressive How long have you been learning English which refers to the progress you've made over the years hence the name of the tense the progressive present perfect.
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.