(PECL ds >= 1.0.0)
Hashable es una interface que permite a los objetos ser usados como claves. Esta es una alternativa a spl_object_hash(), la cual determina el hash de un objeto basado en su gestor: estos significa que dos objetos que son considerados iguales por una implícita definición no serán tratados como iguales debido a que no son la misma instancia.
hash() es utilizada para devolver un valor escalar para ser usado como el valor hash del objeto, el cual determina donde este va en la tabla hash. Aunque este valor no tiene que ser único, los objetos los cuales son iguales deben tener el mismo valor hash.
equals() es utilizada para determinar si dos objetos son iguales. Está garantizado que el objeto de comparación será una instancia de la misma clase que el sujeto.