| Server IP : 62.60.133.156 / Your IP : 216.73.217.51 Web Server : LiteSpeed System : Linux linux24.centraldnserver.com 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64 User : mimradmin ( 1166) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, exec, popen, proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/alt/php53/usr/share/doc/pear/Archive/docs/ |
Upload File : |
<?php
require_once 'tutorial_autoload.php';
date_default_timezone_set( "UTC" );
class ArchiveContext extends ezcBaseFileFindContext
{
public $archive;
public $prefix;
}
function findRecursiveCallback( ezcBaseFileFindContext $context, $sourceDir, $fileName, $fileInfo )
{
$path = "{$sourceDir}/{$fileName}";
if ( is_dir( $path ) )
{
$path .= '/';
}
$context->archive->append( array( $path ), $context->prefix );
}
function appendRecursive( $archive, $sourceDir, $prefix )
{
$context = new ArchiveContext();
$context->archive = $archive;
$context->prefix = $prefix;
ezcBaseFile::walkRecursive( $sourceDir, array(), array(), 'findRecursiveCallback', $context );
}
$archive = ezcArchive::open( "my_archive.zip", ezcArchive::ZIP );
$archive->truncate();
// the 2nd parameter is the directory, the 3rd parameter is the prefix
appendRecursive( $archive, '/tmp/directory/', '/tmp/directory/' );
?>