2017-10-13 7 views
0

Ich muss prüfen, ob eine Datei in zwei Domänen existiert.file_exists mit teilweisem Namen ... ist es möglich?

Das Format der Datei, die in die Datenbank geschrieben wird, stimmt jedoch nicht mit dem in meinen Verzeichnissen gespeicherten Format überein, da einige Sekunden Verzögerung auftreten. (Beispiele siehe unten)

Dateiname, die tatsächlich existieren https://www.dominio01.com.br/sistema/modulos/consulta/consultas/consulta_87314134987_02102017135619.pdf

Ergebnis meines Dateinamen https://www.dominio01.com.br/sistema/modulos/consulta/consultas/consulta_87314134987_02102017135613.pdf

Wie Sie sehen können, gibt es einen Unterschied in den beiden letzten Zeichen (die die Sekunden) vor der Dateiendung.

$dir01 = "https://dominio01.com.br/sistema/modulos/consulta/consultas/"; 
$dir02 = "https://dominio02.com.br/sistema/modulos/consulta/consultas/"; 

$documento = preg_replace("/[^0-9]/", "", $item['retCNPJCPF']); 
$dataDoc = new DateTime($item['retDataHora']); 

$filename = "consulta_".$documento."_".$dataDoc->format('dmYHis').".pdf"; 

if(file_exists($dir01.$filename)){ 
    $lnkConsultas = "Available at dominio 01"; 
} 
elseif(file_exists($dir02.$filename)){ 
    $lnkConsultas = "Available at domínio 02"; 
} 

Ich würde gerne wissen, ob ihre möglich, die Dateien zu bringen, ohne die Sekunden zu informieren, und gibt die Ereignisse dieses. Vielleicht ändere ich den Dateinamen mit etwas Regex, aber ich habe keine Ahnung, wie das geht.

PS: Ich kann "glob" Funktionen nicht verwenden. Es werden leere Ergebnisse zurückgegeben, da sich die Dateien in anderen Domänen befinden.

+0

Entfernen Sie einfach das "s" in der Funktion format()? $ filename = "consulta _". $ documento. "_". $ dataDoc-> Format ('dmYHi'). ". pdf"; – Pauloscorps

+0

@Pauloscorps: Das gleiche Problem, wenn Datei1 endet mit '5659' und Datei2' 5703' sie sind unterschiedlich, auch wenn Sie die Sekunden – Toto

Antwort

0

file_exists kann nicht "suchen". Ich würde einfache API-Skripte auf den 2 Domänen mit "glob" erstellen, um gefundene Dateien als json basierend auf Ihrem Suchmuster zurückzugeben. Sie könnten sie direkt vom Front-End-JSON aufrufen.

+0

Interesting schneiden. Das funktioniert tatsächlich! Danke für die Idee! –

Verwandte Themen