Wie konvertiert man den crc32-Hash von PHP in das MySQL-Äquivalent?

8

Anscheinend gibt die CRC32 () - Funktion von MySQL einen vorzeichenlosen BIGINT zurück, während PHP einen hexadezimalen Wert zurückgibt.

In PHP:

hash('crc32','hello world') == 7813f744

In MySQL:

SELECT CRC32('hello world') == 222957957

Der CRC32-Wert wird in einer CHAR (8) -Spalte gespeichert.

Ich kann nicht herausfinden, wie man den von PHP generierten Hash in den gleichen Wert umwandelt, den MySQL mit nur SQL erzeugt. Das Offensichtliche scheint nicht zu funktionieren:

SELECT HEX(CRC32('hello world')) == D4A1185

SELECT CONV('7813f744',16,10) == 2014574404

Irgendwelche Ideen?

    
DanMan 26.10.2012, 11:44
quelle

1 Antwort

2

Wenn Sie eine 64-Bit-Plattform haben, können Sie die Funktion crc32 problemlos in PHP und CRC32 verwenden. in MySQL. Schnelltest:

%Vor%

MySQL:

%Vor%     
mente 01.12.2013 12:37
quelle

Tags und Links