Já faz um tempo desde a última vez que usei o php, mas
exec("cd /home/stevenbu/public_html/temp/;tar -cf $archive $directory");
ajudaria no shell.
Ok, eu realmente não quero perder mais tempo investigando isso, mas eu quero oferecer uma opção .tar para download em vez de apenas zip.
$archive = "/home/stevenbu/public_html/temp/".$twitter_name.".tar";
$directory = "/home/stevenbu/public_html/temp/".$twitter_name;
exec("tar -cf $archive $directory");
O problema é que quando eu extraio o .tar ele tem 5 pastas de profundidade eu não gostaria de pastas e apenas os arquivos no .tar
Muito obrigado
$parent = "/home/stevenbu/public_html/temp";
$dir = $twitter_name;
$archive = $twitter_name.".tgz";
exec('tar -cz -f '.escapeshellarg($archive).' -C '.escapeshellarg($parent).' '.escapeshellarg($dir));
Este é um pouco melhor, porque gera o arquivo .tar.gz
diretamente no navegador, em vez de criar um arquivo temporário:
$parent = "/home/stevenbu/public_html/temp";
$dir = $twitter_name;
$archive = $twitter_name.".tar.gz";
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.addslashes($archive).'"');
passthru('tar -cz -C '.escapeshellarg($parent).' '.escapeshellarg($dir));