Unsigned INT in PHP Database API

  • App
    WoltLab Suite Core

    Hallo,


    ich wollte gerade mit Hilfe der PHP-Database-API ein Unsigned INT erstellen. Leider habe ich dafür keine Möglichkeit mit Hilfe der PHP-Database-API gefunden. Gerne lasse ich mich natürlich eines Besseren belehren :)

    Nicht immer macht es Sinn auf den nächst größeren Datentyp zu gehen. Vor allem wenn man auf den Speicherplatz achten möchte/muss. Deswegen würde ich mir die Möglichkeit wünschen in zukünftigen Versionen auch Unsigned INT mit Hilfe der PHP-Database-API nutzen zu können. Das gleiche gilt natürlich für TINYINT, SMALLINT, MEDIUMINT und BIGINT.


    Falls ihr Argumente dagegen habt, immer her damit. Ich möchte ja auch noch was dazu lernen :)


    VG

    Peter // Hanashi


    P.S.: das Argument aus diesem Thread lasse ich nicht mehr gelten, da die PHP-Database-API erst mit dem WSC 5.2 kam und auch nicht absehbar ist, dass eine Alternative zu MySQL/MariaDB kommt ;)

  • Ich würde das Unterstützen von Unsigned INT auch befürworten. Ehrlich gesagt, fällt mir auch keinen Grund ein, warum dies nicht schon eingebaut wurde (die zwei Gründe in dem von Hanashi verlinktem Beitrag haben in meinen Augen in der 5.2 auch gar kein Gewicht mehr).

    • Official Post

    Hallo,

    Falls ihr Argumente dagegen habt, immer her damit. Ich möchte ja auch noch was dazu lernen :)

    PHP kennt keine unsigned Ganzzahlen. Entsprechend bekommst du schon bei UNSIGNED INT Probleme mit, leider noch verbreitetem, 32-Bit-PHP. Bei BIGINT ist auch für 64-Bit-PHP „Feierabend“.

  • PHP kennt keine unsigned Ganzzahlen. Entsprechend bekommst du schon bei UNSIGNED INT Probleme mit, leider noch verbreitetem, 32-Bit-PHP. Bei BIGINT ist auch für 64-Bit-PHP „Feierabend“.

    Was ich mich da frage ist, warum können es dann andere Frameworks (z.B. fällt mir grade Laravel ein)? Hätten die nicht auch das Problem?

  • Was ich mich da frage ist, warum können es dann andere Frameworks (z.B. fällt mir grade Laravel ein)? Hätten die nicht auch das Problem?


    Weil die vermutlich entweder gmp oder bcmath nutzen. Da beides in einer Standard-Installation von PHP nicht vorhanden ist, wird das vermutlich auch nicht in der WoltLab-Software verbaut.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!