WebsiteBaker Support (2.13.x) > Hilfe & Support (deutsch)
PHPMailer
(1/1)
LudwigSt:
Hallo an alle,
das Verzeichnis für den PHPMailer ist in der heruntergeladenen zip Datei schon als "phpmailer" in Kleinbuchstaben vorhanden. Man könnte jetzt meinen, das liegt an Windoof, aber die Unterverzeichnisse, die ebenfalls Dateien mit Groß- und Kleinschreibung enthalten, werden korrekt dargestellt.
Wenn ich das richtig verstanden habe (nach Forumssuche nach PHPMailer), dann sollte man die Ordner in "PHPMailer" umbenennen. Kann man den dann ganz normal für eigene Anwendungen benutzen, oder muss etwas beachtet werden?
Luisehahne:
Hallo Ludwig,
das muss so blieben wie es ist. Unter Windows wirst du keine Änderung feststellen, aber unter Unix wird er die Klasse nicht finden
Dietmar
LudwigSt:
Also doch alles in Kleinbuchstaben?
Und wie ist dann der Aufruf?
--- Code: ---use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'path/to/PHPMailer/src/Exception.php';
require 'path/to/PHPMailer/src/PHPMailer.php';
require 'path/to/PHPMailer/src/SMTP.php';
--- End code ---
funktioniert dann doch nicht, oder doch?
DarkViper:
--- Quote from: LudwigSt on April 28, 2022, 01:51:50 PM ---Also doch alles in Kleinbuchstaben?
Und wie ist dann der Aufruf?
--- Code: ---use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'path/to/PHPMailer/src/Exception.php';
require 'path/to/PHPMailer/src/PHPMailer.php';
require 'path/to/PHPMailer/src/SMTP.php';
--- End code ---
funktioniert dann doch nicht, oder doch?
--- End quote ---
Dein Beispiel gilt nur, wenn das System keinen PSR-4 konformen Autoloader hat, wie z.B. Composer oder eben auch WB ;-)
Alles in Kleinbuchstaben? eindeutig "JEIN"
Die Regeln für PHPMailer (und zukünftig für alle Pakete):
Die physikalischen Verzeichnisnamen in Kleinbuchstaben (phpmailer/phpmailer/src/)
Die Namespaces und Dateinamen der Klassendateien in gemischter Schreibweise (PHPMailer.php), wobei der Dateinamen sowohl vom Namen als auch der Schreibweise identisch zum enthaltenen Klassennamen (mit angehängtem '.php') sein muss.
Der Aufruf besteht dann nur noch aus z.B.:
--- Code: ---<?php
// den PHPMailer einbinden
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP; // <<<< wird nur benötigt, wenn das aufrufende Programm public SMTP-Konstanten verwenden will
// irgendwas vorher erledigen
// jetzt Mailerinstanz erzeugen
$oMailer = new PHPMailer();
//die Properties setzen und dann nacheinander die benötigten Methoden aufrufen
$oMailer->xxxx = 'ztzu';
$oMailer->tuwas('xxxx');
// irgendwas anderes danach noch erledigen
--- End code ---
Das ist alles, was für den PHPMailer benötigt wird.
Nur ein einziger use-Eintrag und keinerlei require() oder include(). Der Rest wird alles automatisch bei Bedarf vom Autoloader erledigt.
Alle Klarheiten beseitigt??
LG. Manuela
LudwigSt:
--- Quote from: DarkViper on April 29, 2022, 04:57:00 AM ---Alle Klarheiten beseitigt??
--- End quote ---
Danke Manuela, alles verstanden und klappt! :-)
Navigation
[0] Message Index
Go to full version