Method hash_8_0()
- Method
hash_8_0
int
hash_8_0(string
s
)
int
hash_8_0(string
s
,int
max
)- Description
Return an integer derived from the string
s
. The same string always hashes to the same value, also between processes, architectures, and Pike versions (see compatibility notes below, though).If
max
is given, the result will be >= 0 and <max
, otherwise the result will be >= 0 and <= 0x7fffffff.- Deprecated
Use hash_value() for in-process hashing (eg, for implementing
lfun::_hash()
) or one of the cryptographic hash functions.- Note
This function is really bad at hashing strings. Similar string often return similar hash values.
It is especially bad for url:s, paths and similarly formatted strings.
- Note
The hash algorithm was changed in Pike 7.5. If you want a hash that is compatible with Pike 7.4 and earlier, use hash_7_4(). The difference only affects wide strings.
The hash algorithm was also changed in Pike 7.1. If you want a hash that is compatible with Pike 7.0 and earlier, use hash_7_0().
- Note
This hash function differs from the one provided by hash_value(), in that hash_value() returns a process specific value.
- See also