Was this implemented with something in mind?
Indeed. The network operator (or carrier, if you prefer to call them that) can on their [WAP] gateways add the MSISDN (phone number) to the HTTP headers (or they can decide not to).
Most don't do it. Some do it. Some do it only if you pay for the information (i.e., only on connections to a site that has an agreement to get the info).
The phone (and thus the browser) doesn't know the phone number at all (it is not stored on the phone or needed/used for making calls, sending messages or making a packet data connection).
But then why does it not appears in the browser string of Opera?
Symbian guys are not lying. Operators or phone manufacturers could store the number on the SIM or in phone memory, and if it is/was stored, it could be retrieved. In general, however, the number is not stored, and I don't think there is a standard way for every network to ask the network side for it, either.
Have you tried that API? In how many cases (which device models and which operators/plans) were you able to actually get the number?
For connecting to the network and authenticating the device, the only things ever needed/transmitted by the phone is the IMSI and the IMEI. The phone number (MSISDN) is not needed/used for making calls or sending data.
I've seen some prepaid SIM cards with the number, but that's all.
So, in general, it is easiest to assume that the number is not there and can't be retrieved.
never needed it so I've never tried it, but it's good to know that you have and shared your knowledge with us.