Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%)
|
Witam od pewnego czasu mam dziwny problem.
Skrypt, który używałem do pakowania/ robienia kopii zapasowej zawsze działał. Od pewnego czasu nie potrafi poradzić sobie z prawdopodobnie wiekszą ilościa plików. Mimo to, że wcześniej wykonywał te kopie. Przykładowo stosuje go do kopii wordpresów. teraz niestety, nie kończy wykonanie skryptu Tworząc plik: 2017-10-16-backup.zip.VVlEF3 czyli w którymś momencie kończy wykonywać się i nie dochodzi do: $zip->close(); Tutaj kod skryptu: Kod <?php session_start(); $when=date("Y-m-d"); if (!file_exists('../BackUp')) { mkdir('../BackUp', 0777, true); echo 'Utworzono katalog BackUp <br>'; } else{ } // Get real path for our folder $rootPath = realpath('../'); // Initialize archive object $zip = new ZipArchive(); $zip->open('../BackUp/'.$when.'-backup.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE); // Create recursive directory iterator /** @var SplFileInfo[] $files */ $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($rootPath), RecursiveIteratorIterator::LEAVES_ONLY ); foreach ($files as $name => $file) { // Skip directories (they would be added automatically) if (!$file->isDir()) { // Get real and relative path for current file $filePath = $file->getRealPath(); $relativePath = substr($filePath, strlen($rootPath)); //if((strpos($relativePath, 'BackUp') !== false) || (strpos($relativePath, 'zipper') !== false)){ //Dla m-foto/ bez sklepu if((strpos($relativePath, 'BackUp') !== false) || (strpos($relativePath, 'zipper') !== false) ){ } // Add current file to archive else{ $_SESSION["show_path"]=$relativePath; //echo $relativePath."<br>"; echo '<pre>' . print_r($_SESSION["show_path"], TRUE) . '</pre>'; $zip->addFile($filePath, $relativePath); } } } // Zip archive will be created only after closing object $zip->close(); echo "BackUp plików zakończony"; ?> Może ktoś wie dlaczego tak się dzieje? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 172 Pomógł: 0 Dołączył: 11.06.2014 Ostrzeżenie: (0%)
|
zrobilem na przykladzie home.pl (tam np mam jedna ze stron). dzialac to dziala. bo wywolalem specjalnie blad np funkcje ktora nie istnieje. zapisuje do tego pliku.
Ale sam skrypt wykonuje sie bez bledu i go nie notuje. ale plik nie zostaje poprawnie stworzony. Moze na localu sproboje to zasymulowac, tylko jak poprawnie utworzyc taki log. |
|
|
|
atom90 [PHP]Zipowanie plików 16.10.2017, 09:02:13
nospor Wlacz logowanie bledow i sprawdz na czym sie wykrz... 16.10.2017, 09:15:00
atom90 Koderror_reporting = E_ALL & ~E_NOTICE
error_l... 16.10.2017, 10:23:52
nospor Drobna dygresja: czemu uwazasz ze E_NOTICE to nie ... 16.10.2017, 10:27:23
nospor ok, uzyj tego do wyswietlenia stanu
http://php.net... 16.10.2017, 10:39:39
atom90 Ale gdzie, jak to się używa.... 16.10.2017, 10:52:26
nospor zgodnie co napisali w manualu, funkcja zwraca blad... 16.10.2017, 10:54:37
atom90 w string mam dac to gdzie sie zapisuje?
echo ... 16.10.2017, 11:08:23
nospor $zip->close();
echo $zip->getStatu... 16.10.2017, 11:18:14
atom90 Właśnie nie. Ostatnie co widze to jedna ze sciezek... 16.10.2017, 11:49:45
nospor No to ewidentnie skrypt sie wywala i musi pluc ble... 16.10.2017, 11:51:56
atom90 z listingow jak wyswietlam te sciezki to konczy si... 16.10.2017, 11:57:10
sabat24 Wygląda na przekroczenie czasu wykonywania albo pr... 16.10.2017, 12:29:36
atom90 na xampie jak odpalilem:
Fatal error: Maximum exe... 16.10.2017, 13:23:07
sabat24 Najprościej podziel to na jakieś paczki. Zlicz wie... 16.10.2017, 13:33:03 ![]() ![]() |
|
Aktualny czas: 29.12.2025 - 09:45 |