Если вы просто хотите извлечь определенные файлы из архива (и вы знаете, что они есть), используйте второй параметр (записи).
$zip->extractTo('minus/', array('file1.ext', 'newfile2.xml'));
Если вы хотите извлечь все файлы, которые не существуют, вы можете попробовать одно из следующих:
$files = array();
for($i = 0; $i < $zip->numFiles; $i++) {
$filename = $zip->getNameIndex($i);
// if $filename not in destination / or whatever the logic is then
$files[] = $filename;
}
$zip->extractTo($path, $files);
$zip->close();
Вы также можете использовать $zip->getStream( $filename )
для чтения потока, который затем записываете в файл назначения.