Like a lot of others have said here, it depends on where you define your threshold for having "learned" a language. To get reasonably productive in a language to the point where you can (eventually) build most things shouldn't take more than week if you have a few under your belt.
Then there is the long process learning the right idioms, keeping up with the latest changes in newer languages, familiarizing yourself with the universe of libraries, etc, etc - I think all of these things are required to really claim fluency in a language. So I would answer "a long, long ass time."