Ich habe eine Datei-Upload-Funktion in meinem Symfony2-Projekt und ich möchte überprüfen, ob die hochgeladene Datei ein .tex
Dateiformat = & gt; LaTex-Datei.
Für Text / HTML verwende ich:
Ich versuche es:
%Vor%Aber sobald ich eine .tex Datei hochlade, bekomme ich die Nachricht:
%Vor%Wie kann ich Tex-Dateien auch hier hinzufügen? Danke.
Ich denke, dass die gleichen Prinzipien der Bildvalidierung hier angewendet werden können. Es ist unzuverlässig, MIME-Typen zu vertrauen, da der Benutzer php
executable innerhalb von image/jpeg
anpflanzen könnte.
Für die Bilder kann dies mit getimagesize()
function überprüft werden. Wie für die LaTeX
benötigen Sie einige 3rd-Party-lib, was versuchen wird, hochgeladene Datei zu öffnen und die Ausnahme bei Fehler (ungültiges Dateiformat, ungültiger Ausdruck, etc ...) zu werfen.
Vielleicht dieser: PHPLatex ?
Auch, welchen Mime-Typ hast du bekommen, als du versucht hast, eine Datei hochzuladen? (@ Ahmeds Idee)
Wenn der einreichende Kunde nicht weiß, dass tex-Dateien als application / x-tex registriert sind, glaube ich, dass der Client dann nicht als solcher gesendet wird.
Können Sie nach der \documentclass
-Direktive im Stream suchen?
Alternativ, wenn Sie die Kontrolle über die Client-Maschinen haben, z.B. Können Sie bei der Arbeit oder an der Universität die Mime-Typen registrieren lassen?
Ich glaube, du musst die application/x-latex
Mimik verwenden. Geben Sie ein.
Tags und Links php latex symfony validation mime-types