Signatur
Beschreibung
fann_print_error gehört zur FANN-Erweiterung (Fast Artificial Neural Network Library) und gibt die zuletzt aufgetretene Fehlermeldung einer FANN-Ressource (z. B. ein neuronales Netz oder eine Trainingsdaten-Ressource) direkt auf der Standardausgabe aus.
Die Funktion ist vor allem für Debug-Zwecke während der Entwicklung geeignet, wenn man schnell sehen möchte, welcher Fehler in der FANN-Bibliothek zuletzt aufgetreten ist, ohne selbst die Fehlermeldung über fann_get_errstr abfragen zu müssen.
In Produktivsystemen sollte stattdessen fann_get_errno und fann_get_errstr verwendet werden, um Fehlermeldungen programmatisch abzufangen und in ein eigenes Logging-System zu schreiben, anstatt sie direkt auszugeben.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $errdat Pflicht | resource | Eine FANN-Ressource (neuronales Netz oder Trainingsdaten), deren letzte Fehlermeldung ausgegeben werden soll. Die Ressource wird typischerweise durch fann_create_standard, fann_read_train_from_file o. ä. erzeugt. |
Rückgabewert
Beispiele
Fehlermeldung nach fehlgeschlagenem Laden eines neuronalen Netzes ausgeben
<?php
// Versuche, ein neuronales Netz aus einer nicht vorhandenen Datei zu laden
$ann = fann_create_from_file('nicht_vorhanden.net');
if ($ann === false) {
echo "Fehler beim Laden des Netzes:" . PHP_EOL;
// Da $ann false ist, übergeben wir stattdessen eine gültige Ressource
// In der Praxis: Fehler über eine zuvor gültige FANN-Ressource ausgeben
$ann_neu = fann_create_standard(3, 2, 3, 1);
fann_print_error($ann_neu);
fann_destroy($ann_neu);
} else {
echo "Netz erfolgreich geladen.";
fann_destroy($ann);
}
Fehlermeldung nach einem Trainingsversuch ausgeben
<?php
// Neuronales Netz erstellen
$ann = fann_create_standard(3, 2, 4, 1);
if ($ann) {
// Trainingsdaten aus einer Datei laden
$train_data = fann_read_train_from_file('xor.data');
if ($train_data === false) {
echo "Trainingsdaten konnten nicht geladen werden. Fehlermeldung:" . PHP_EOL;
fann_print_error($ann);
} else {
fann_train_on_data($ann, $train_data, 1000, 100, 0.001);
fann_print_error($ann);
fann_destroy_train($train_data);
}
fann_destroy($ann);
}
// Wichtig · Fallstricke
Hinweis: fann_print_error gibt die Fehlermeldung direkt auf der Standardausgabe aus, was in Webanwendungen zu unerwünschter Ausgabe im HTML führen kann. Für produktive Anwendungen empfiehlt sich stattdessen die Verwendung von fann_get_errstr und fann_get_errno, um Fehlermeldungen kontrolliert zu behandeln.
Die FANN-Erweiterung muss als PHP-Extension kompiliert und aktiviert sein (extension=fann in der php.ini). Sie ist nicht standardmäßig enthalten und muss über PECL installiert werden.