Wie kann ich MySQL-Versionen in PHP vergleichen?

8

Okay, also bekomme ich meine MySQL-Version so:

%Vor%

Was mir eine Nummer wie folgt gibt: 5.1.36

Das ist alles gut. Was ich tun muss, ist diese Version mit einer anderen Version zu vergleichen. Ich wollte gerade meine Funktion schreiben, um sie zu vergleichen, als ich an version_compare() dachte. Beim Testen wurde ich jedoch unsicher, aber vielleicht bin ich mir nicht sicher, wie die MySQL-Versionsnummern funktionieren.

Das habe ich getestet:

version_compare('5.1.36', '5.1.4', '<');

oder

5.1.36 < 5.1.4

Ich nahm an, dass dies wahr werden würde, dass 5.1.36 weniger als 5.1.4 ist. Mein Grund dafür ist, dass ich 5.1.4 tatsächlich 5.1.40 nicht 5.1.04 bin. Vielleicht liege ich da falsch.

Also denke ich falsch, oder gibt die Funktion das falsche Ergebnis zurück?

    
Jason Lewis 30.06.2010, 17:50
quelle

4 Antworten

8

Die Funktion ist korrekt. Das Nummerierungssystem ist M.m.r, wobei jede "Zahl" eine Dezimalzahl ist.

  • M ist die Hauptversionsnummer
  • m ist die Nebenversionsnummer
  • r ist die Revisionsnummer

Also wäre 5.1.36 Revision 36 der 5.1-Minor-Version ... Daher wäre 5.1.4 Revision 4 (und damit 36 ​​& gt; 4) ...

    
ircmaxell 30.06.2010, 17:56
quelle
3

Ссылка :)

    
Your Common Sense 30.06.2010 18:04
quelle
2

Ссылка

Die Methode get_server_version () von mysqli gibt die Version als Ganzzahl zurück.

  

Hauptversion * 10000 + Nebenversion   * 100 + Unterversion (d. H. Version 4.1.0 ist 40100).

    
racerror 30.06.2010 18:01
quelle
-1
  

Ich nahm an, dass dies wieder wahr werden würde,   dass 5.1.36 weniger als 5.1.4 ist. Meine   Grund dafür ist, dass ich Abbildung 5.1.4 bin   eigentlich 5.1.40 nicht 5.1.04. Vielleicht   Ich liege da falsch.

Ja, 5.1.36 ist größer als 5.1.4.

    
Simon 30.06.2010 17:55
quelle

Tags und Links