¿Cómo extraer un archivo ZIP que tiene una contraseña usando solo PHP?

He visto solo una pregunta aquí, pero no responde a mi pregunta. Estoy ejecutando un servidor LAMP típico que tiene el PHP 5 y el MYSQL 5 más actualizados con Redhat Linux.

Necesito encontrar una solución solo para PHP porque mi host no me permite usar shell.

Aquí está mi código que extrae los ZIP que no tienen contraseña de las cargas de vBulletin a otro directorio:

if ($_GET['add'] == TRUE){
$zip = new ZipArchive;
 $res = $zip->open($SOURCE FOLDER);
 if ($res === TRUE) {
     $zip->extractTo('$DESTINATION FOLDER/');
     $zip->close();
     echo 'File has been added to the library successfuly';
     //Add a flag to that file to indicate it has already been added to the library.
     mysql_query("UPDATE attachment SET library = 1 WHERE filedataid='$fileid'");    
 } else {
     echo 'A uncompression or file error has occured';
 }}

Debe haber alguna forma de hacer esto usando solo PHP, ¡seguramente! Gracias.

ACTUALIZACIÓN: Mi host me informa que gzip está instalado en el servidor pero no 7-Zip. Estoy buscando en el acceso de shell también.

Respuestas a la pregunta(2)

Su respuesta a la pregunta