How to (recursively) Zip a directory in PHP?

%1$s besuchenHow to (recursively) Zip a directory in PHP?

nur $file in der Schleife nochmal zu definieren nachdem die Slashes bereits “umgedreht” wurden, dürfte unter Windows keine gute Idee sein, aber wie nachfolgend sollte sie funktionieren:

...
        foreach ( $files as $file ) {

            $file = str_replace( '\', '/', realpath( $file ) );
            // Ignore '.' and '..' folders
            if ( in_array( substr( $file, strrpos( $file, '/' ) + 1 ), array( '.', '..' ) ) )
                continue;

			// $file = realpath($file);	do not define $file AFTER Slash-correction  

            if ( is_dir( $file ) === true ) {
                $zip->addEmptyDir( str_replace( $source . '/', '', $file . '/' ) );
            }
            elseif ( is_file( $file ) === true ) {
                $zip->addFromString( str_replace( $source . '/', '', $file ), file_get_contents( $file ) );
            }
        }
...