You can't "unhash" something, that's why hashing is "secure" (we won't go into debate here).
Now, why would your users want to get their password back? Because they forgot them and can't log in? If that's the case, there's other ways to do the "forgot password, I'll fix that for you" other than trying to unhash something. Most common are to place a "forgot password" link that ask for the email, sends an email with a link to reset the password, the user clicks the link and the reset creates a random password (and hashes it) replacing the old one and sends the new random pass to the user, the user use the random pass and can change it for a new one when logged in the application.
If you, as admin, want to do something as "act as" someone else, you could add a function (that only you as admin have access) that let you "act as" another person, without knowing their password. It depends on what you want to do exactly what the best solution for this would be and that should be posted as an entirely different question, I think.
But, please consider this carefully, it's a very very dangerous thing to do. What if someone can execute this function? Isn't there other solution? If you do this, the only thing between an attacker and the entire access to every account in your application would be your admin password. If you change the password hashing to a password encryption (that can be reversed and obtain the plain text), then some "evil" will have a much easier time to decrypt the passwords too. I know the client has the last word, but explain to him, it is very insecure to do what he wants.