It seems to be using an undocumented feature, only in chan_sip, that stores the full contact in AstDB. It couldn’t be implemented like that in chan_pjsip, as chan_pjsip allows more than one contact.
(It is also confusing extensions and endpoints, as ph is the endpoint, not the extension, even if commonly made the same.)