Ich möchte eine bestimmte Klasse instanziieren, wenn mein PHP-Skript Daten aus dem Eingabefeld mit name = "files []" erhält.
Zum Beispiel hat jemand eine Datei mit einem von hochgeladendas eingabefeld in meinem html formular, jquery sendet daten als json an php und in php baue ich verschiedene klassen auf und jede klasse wird instanziiert basierend auf dem wert des eingabefeldes des namensattributs.
Das ist es was ich versuche zu tun
error_reporting(E_ALL | E_STRICT);
require("UploadHandler.php");
if (!empty($_REQUEST) && empty($_REQUEST["files[]"]) && empty($_REQUEST["files2[]"])) {
$upload_handler1 = new UploadHandler();
}
else {
if ($_REQUEST["files"]) {
$custom_upload_handlerone = new customUploadHandlertwo();
}
if ($_REQUEST["files2"]) {
$custom_upload_handlertwo = new customUploadHandlerone();
}
}
Wenn jemand das angegebene Eingabefeld nicht verwendetUm Daten zu senden, sollte die einfache Klasse UploadHandler instanziieren und sobald ich ein Eingabefeld sende, sagen wir mit dem Attribut name = "file2 []". Das Skript stoppt die UploadHandler-Instanziierung und instanziiert die Klasse customUploadHandlertwo
Antworten:
1 für die Antwort № 1Ich gehe davon aus, dass es einen Zusammenhang mit dem Namensattribut des Feldes und der PHP-Klasse gibt. In diesem Fall ist die Instanziierung einer solchen Klasse wie folgt einfach
...
else {
if ($_REQUEST["files"]) {
$className = $_REQUEST["files"];
$custom_upload_handlerone = new $className();
}
if ($_REQUEST["files2"]) {
$className = $_REQUEST["files2"];
$custom_upload_handlertwo = new $className();
}
}
...