openssl_public_decrypt() は、事前に openssl_private_encrypt() で暗号化された data を復号化し、それを decrypted に格納します。 key は、データの暗号化に使用したものに 対応する公開鍵である必要があります。padding のデフォルトは OPENSSL_PKCS1_PADDING ですが、 これ以外にも OPENSSL_NO_PADDING が指定可能です。
成功した場合に TRUE を、失敗した場合に FALSE を返します。
これを使用するのは、例えばメッセージの作者が秘密鍵の所有者であるか どうかを調べる場合です。
openssl_private_encrypt() および openssl_private_decrypt() も参照ください。