Are there alternative functions or libraries that can be used as a replacement for MCRYPT in PHP programming?

MCRYPT has been deprecated in PHP 7.1 and removed in PHP 7.2. To replace MCRYPT, you can use the OpenSSL extension in PHP, which provides similar encryption and decryption functionalities.

// Encrypt using OpenSSL
function encryptData($data, $key) {
    $iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length('aes-256-cbc'));
    $encrypted = openssl_encrypt($data, 'aes-256-cbc', $key, 0, $iv);
    return base64_encode($iv . $encrypted);
}

// Decrypt using OpenSSL
function decryptData($data, $key) {
    $data = base64_decode($data);
    $iv = substr($data, 0, openssl_cipher_iv_length('aes-256-cbc'));
    $encrypted = substr($data, openssl_cipher_iv_length('aes-256-cbc'));
    return openssl_decrypt($encrypted, 'aes-256-cbc', $key, 0, $iv);
}

// Usage
$key = 'secretkey';
$data = 'Hello, world!';
$encryptedData = encryptData($data, $key);
echo "Encrypted data: $encryptedData\n";
$decryptedData = decryptData($encryptedData, $key);
echo "Decrypted data: $decryptedData\n";