Wenn ich nun später die PDFfe als Stapel drucken möchte, wird ja die Klasse mit require_once nur einmal eingelesen. Werden dann trotzdem alle Eigenschaften immer wieder neu gesetzt? Das war ja so ungefähr das Ziel der ganzen Aktion.
Eine Klasse „trabant“ wäre etwas wie eine Konstruktionszeichnung. Eine Klasse „trabant4takt“ wäre eine davon abgeleitete Konstruktionszeichnung.
Achja. Dann sollte es gehen.
Und ja, tut es auch, fast.
Mir ist eben die erste Stapelverarbeitung gelungen. Danke Euch und vor allem an RolfB und Willi für die Hilfe bis hierher.😍
Aber ich musste ein paar Zeilen Code dafür aus dem Gesamtcode nehmen. Diese Codezeilen stammen übrigens von Dir, Willi. Damals noch als Wissenschaftler unterwegs und ich als Fragesteller Rabeneik.
Ich habe die seinerzeit praktisch 1:1 nutzen können.
Jedenfalls kommt das Script an dieser Stelle nicht ab dem 2. Durchlauf der Stapelverarbeitung vorbei.
Kann sich das jemand erklären?
Ich muss beide Funktionen und den Funktionsaufruf deaktivieren.
Nur den Funktionsaufruf zu deaktivieren reicht nicht aus.
function myCompare($a,$b,$invers = false)
{
if($invers) {
$c = $a;
$a = $b;
$b = $c;
unset($c);
}
if(is_string($a) and is_string($b)) {
return strcmp($a,$b);
} elseif(is_numeric($a) and is_numeric($b)) {
if($a == $b)
return 0;
if($a < $b)
return -1;
if($a > $b)
return 1;
}
trigger_error('Nicht vorgesehener Datentyp in Funktion myCompare. Erlaubt sind string und numeric',E_USER_ERROR);
}
function compare_Datum_UID_Prio_Prio2($a,$b)
{
$invers['Datum'] = false;
$invers['UID'] = false;
$invers['Prio'] = false;
$invers['Prio2'] = false;
foreach(['Datum','UID','Prio','Prio2'] as $itemProp) {
$r = myCompare($a[$itemProp],$b[$itemProp],$invers[$itemProp]);
if(0 != $r) {
return $r;
}
}
}
usort($list,'compare_Datum_UID_Prio_Prio2');