I'd suggest first reading the 7-zip help to learn how to use it's command line interface. You'll need to understand how to run the command outside of Perl before you can incorporate that command inside your Perl code.
I believe that the general syntax that you're looking for is:
"C:\Program Files\7-Zzip\7z.exe" a -tzip my_archive.zip C:\my_data\ -r
However, putting that into your Perl code and trying to capture the output (STDOUT and/or STDERR) may be a challenge. I apologize for not being able to describe this using correct terminology. The 7z.exe is at times reusing lines in STDOUT to show progress. I could be wrong, but I think that behavior will causes challenges when trying to caputure output messages from the 7z.exe utility.