Hi!
Ich hab deine Idee entsprechend angepasst. Anstelle von
0331 und
0401 gibt's dann
89 bzw.
90. Dann müsste die Bedingung wohl so aussehen:
Das funktioniert aber auch nicht. Was aber offenbar funktioniert ist dies:
oder eben
D.h. ich kann mir dies sparen:
und direkt mit dem Zahlenwert arbeiten. Das ganze sieht dann so aus:
Code: Alles auswählen
if (($vault_quartals < "0101") or ($vault_quartals < "0401") or ($vault_quartals < "0701") or ($vault_quartals < "1001"))
Aber auch das funktioniert so nicht.
Ich habe die Ursache für dieses Verhalten aber offenbar gefunden. Schuld an dieser Misere ist die führende Null bei der Quartalsanzeige. Mit 0401 etc. kommt ein Vergleich wohl nicht zurecht. D.h. ich muss das Jahr mit davor setzen. Das bringt insofern auch gleich eine Lösung für den 01. Januar mit, denn da kann die bisherige Bedingung so nicht zutreffen.
Das stelle ich mir so vor:
Code: Alles auswählen
$current_Year = create_date('Y', $current_time, $board_config['board_timezone'], 0);
Das ergibt das aktuelle Jahr. Wie müsste ich dann die Variable hier an die 0401 anfügen?
Dies funktioniert so nicht:
denn es gibt ein Leerzeichen zwischen Jahreszahl und 0401. Also dachte ich an folgende Lösung:
Code: Alles auswählen
$current_Year = create_date('Y', $current_time, $board_config['board_timezone'], 0);
$quartals1 = $current_Year . '0401';
$quartals2 = $current_Year . '0701';
$quartals3 = $current_Year . '1001';
$quartals4 = $current_Year . '0101';
if (($vault_quartals < $quartals4) or ($vault_quartals < $quartals1) or ($vault_quartals < $quartals2) or ($vault_quartals < $quartals3))
Das ergibt dann dies:
20090331 < 20090401
Das funktioniert so aber auch nicht.
Grundproblem scheint die
ODER Verknüpfung dieser Bedingungen zu sein. Nehme ich z.B. nur eine Bedingung:
dann funktioniert es.