.htpasswd is the common name for the password file used in HTTP BASIC authentication. You cannot tinker with it to add a third field. However, I can't see why you would want to do so, because the username should be a unique identifier, suitable for retrieving additional information from a data store.
HTTP BASIC authentication ordinarily takes place outside of the context of PHP. The browser is challenged by the server, the browser puts up the login box, the browser passes the login data to the server, and (on success) the page is delivered. Once the process has taken place, the name-password pair are included automatically with every subsequent HTTP request to that domain.
If you want to embed the login prompt in a page, don't use HTTP BASIC ... write your own authentication scheme using sessions.