PHP rename() und unlink() löschen/verschieben die Datei nach der Verarbeitung der hochgeladenen PDF-Datei nicht aus dem Php

PHP-Programmierer chatten hier
Anonymous
 PHP rename() und unlink() löschen/verschieben die Datei nach der Verarbeitung der hochgeladenen PDF-Datei nicht aus dem

Post by Anonymous »

Ich erstelle ein PHP-Skript, das PDF-Dateien hochlädt, sie in TXT konvertiert und sie mit Dateien in einem Ordner „Ausstehend“ vergleicht.
Alles funktioniert, bis ich versuche, die passenden Dateien aus dem Ordner „Ausstehend“ zu verschieben oder zu löschen. PHP meldet Erfolg, aber die Dateien bleiben im Ordner.
Hier ist der relevante Teil meines Codes:

Code: Select all

function safeUnlink($path, $maxWait = 10) {
$waited = 0;
while (file_exists($path) && !@unlink($path) && $waited < $maxWait) {
usleep(500000); // wait 0.5s
$waited += 0.5;
}
return !file_exists($path);
}

// Move or delete matching pending files
if ($similarity >= $threshold) {
$pendingPdf = $pendingPdfFolder . basename(str_replace('.txt', '.pdf', basename($pendingTxt)));
$destPdf    = $rejectedPdfFolder . basename($pendingPdf);
$destTxt    = $rejectedTxtFolder . basename($pendingTxt);

if (file_exists($pendingPdf) && @rename($pendingPdf, $destPdf)) {
$statusMessages[] = "✅ PDF moved to Rejected/pdf/: " . basename($pendingPdf);
}

if (file_exists($pendingTxt) && @rename($pendingTxt, $destTxt)) {
$statusMessages[] = "✅ TXT moved to Rejected/txt/: " . basename($pendingTxt);
}

// Attempt to remove from Pending after move
if (file_exists($pendingPdf) && safeUnlink($pendingPdf)) {
$statusMessages[] = "🗑️ Removed PDF from Pending: " . basename($pendingPdf);
}
if (file_exists($pendingTxt) && safeUnlink($pendingTxt)) {
$statusMessages[] = "🗑️ Removed TXT from Pending: " . basename($pendingTxt);
}
}`

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post