файлы и папки — МиниКод http://minicode.ru записи кодов Wed, 05 Sep 2018 06:40:48 +0000 ru-RU hourly 1 https://wordpress.org/?v=4.8.14 создание ZIP архива на лету и отдача на скачивание bitrix http://minicode.ru/sozdanie-zip-arxiva-ne-letu-i-otdacha-na-skachivanie-bitrix/ Wed, 08 Apr 2015 07:25:59 +0000 http://minicode.ru/?p=778
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
// require($_SERVER["DOCUMENT_ROOT"]."/download/createzip.php");
$arrFile = array(
					"/upload/item.jpg", 
					"/upload/item2.jpg", 
					"/upload/slide.jpg",
					"/upload/products/doc/CWSO.pdf",
					"/upload/products/doc/CWSS-C-W.pdf",
					"/upload/products/doc/CWSS-O.pdf",
					"/upload/products/doc/CWST.pdf",
					"/upload/products/doc/DBS1224B4W_manual.pdf",
					"/upload/products/doc/EMA_DBS_Certificate.pdf",
					"/upload/products/doc/EnScape_Certificate.pdf",
					"/upload/products/doc/ExitPoint_Certificate.pdf",
					"/upload/products/doc/ExitPoint_manual.pdf",
					);

createZipAndDownload($arrFile);

function createZipAndDownload($arFiles)
{
	$zip = new ZipArchive();
	$filename = "system_sensor_archive_".date("d.m.Y").".zip";
	var_dump($filename);
	if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) {
	    exit("Невозможно открыть <$filename>\n");
	}

	foreach ($arFiles as $file) 
	{		
	 	$arr = explode("/", $file);	 	
	 	var_dump($arr);
		$zip->addFile($_SERVER["DOCUMENT_ROOT"].$file, end($arr));
	}
	
	$zip->close();

	file_force_download($filename);
}

function file_force_download($file) {
  if (file_exists($file)) {
    // сбрасываем буфер вывода PHP, чтобы избежать переполнения памяти выделенной под скрипт
    // если этого не сделать файл будет читаться в память полностью!
    if (ob_get_level()) {
      ob_end_clean();
    }
    // заставляем браузер показать окно сохранения файла
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename=' . basename($file));
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    // читаем файл и отправляем его пользователю
    readfile($file);

    unlink($file);
    exit;
  }
}

Оригинал тут http://pastebin.com/h8zubtLz

]]>
Скачивание файл http://minicode.ru/skachivanie-fajl/ Mon, 15 Apr 2013 10:27:43 +0000 http://minicode.ru/?p=277
// выводим в браузер
if (file_exists($fName)) {
  header('Content-Description: File Transfer');
  header('Content-Type: application/octet-stream');
  header('Content-Disposition: attachment; filename="'.basename($fName).'"');
  header('Content-Transfer-Encoding: binary');
  header('Expires: 0');
  header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  header('Pragma: public');
  header('Content-Length: ' . filesize($fName));
  ob_clean();
  flush();
  readfile($fName);
  exit;
}
]]>
Удаление папки с файлами в PHP http://minicode.ru/udalenie-papki-s-fajlami-v-php/ Sat, 06 Apr 2013 07:27:35 +0000 http://minicode.ru/?p=261
<?
$folder = 'upload1';
$dir = $_SERVER['DOCUMENT_ROOT']."/".$folder;
function rmDir($dir) {
	if ($elemDir = glob($dir."/*")) {		
	   foreach($elemDir as $elem) {
		 is_dir($elem) ? rmDir($elem) : unlink($elem);
	   }
	}
	rmDir($dir);
}

rmDir($dir);
?>
]]>
Создание символических ссылок PHP symlink() http://minicode.ru/sozdanie-simvolicheskix-ssylok-php-symlink/ http://minicode.ru/sozdanie-simvolicheskix-ssylok-php-symlink/#respond Mon, 01 Apr 2013 07:42:26 +0000 http://minicode.ru/?p=248
<?
$path = '/home/sait/www';
$folder = 'include';
if(symlink($path."/".$folder,$_SERVER['DOCUMENT_ROOT']."/".$folder)){
	echo "<font color=green>Символические ссылка удачно созданы</font>";
}else{
	$strError = 'Не удалось создать ссылку на папку '.$folder.', обратитесь к администратору сервера';
}
?>
]]>
http://minicode.ru/sozdanie-simvolicheskix-ssylok-php-symlink/feed/ 0