Versuchen Sie
%Vor%Wenn Sie dies häufig tun müssen, sollten Sie ein Array verwenden, bei dem diese Werte fest codiert sind:
%Vor%Kann es auch anders herum tun, indem Sie die Namen für die Schlüssel und Zahlen für die Werte verwenden.
Mit den Namen für Werte, die Sie tun
%Vor%und mit Namen für Schlüssel, die Sie tun
%Vor%Ich finde die Verwendung der Zahlen für die Schlüssel etwas besser im Allgemeinen , obwohl für Ihr UseCase die Namen für die Schlüssel Annäherung wahrscheinlich komfortabler ist. Mit nur 12 Werten im Array sollte zwischen den Array-Approches kein großer Unterschied bestehen.
Ein schneller Benchmark bemerkte einen Unterschied von 0,000003s gegenüber 0,000002s, während die Zeitumwandlung 0,000060s auf meinem Computer einnimmt (lies: kann sich auf anderen Computern unterscheiden).
Was ist mit strtotime()
, um November
in einen Zeitstempel zu konvertieren und dann? funktioniert die Funktion date()
mit dem Format n
Nimm die entsprechende Nummer:
Gibt die folgende Ausgabe aus:
%Vor%
Und nur zum Spaß, eine Portion Code wie der folgende:
gibt Ihnen die Liste aller Monate mit ihren entsprechenden Zahlen - zeigen, dass diese Idee für alle 12 Monate und nicht nur November funktioniert; -)
Ich kann mir nicht vorstellen, dass dies effizienter ist, aber es funktioniert
%Vor%Abhängig von Ihrem Szenario wäre die effizienteste Lösung, ein assoziatives Array zu erstellen wie:
%Vor%Und dann sind deine Lookups super einfach:
%Vor%