array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'class.ds-hashable.php', 1 => 'Ds\\Hashable', ), 'up' => array ( 0 => 'book.ds.php', 1 => 'Estruturas de Dados', ), 'prev' => array ( 0 => 'ds-collection.toarray.php', 1 => 'Ds\\Collection::toArray', ), 'next' => array ( 0 => 'ds-hashable.equals.php', 1 => 'Ds\\Hashable::equals', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/ds/ds.hashable.xml', ), 'extra_header_links' => array ( 'rel' => 'alternate', 'href' => '/manual/en/feeds/class.ds-hashable.atom', 'type' => 'application/atom+xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PECL ds >= 1.0.0)
Hashable é uma interface que permite que objetos sejam usados como chaves. É uma alternativa ao spl_object_hash(), que determina o hash de um objeto com base no seu identificador: isso significa que dois objetos considerados iguais por uma definição implícita não serão tratados como iguais porque não são a mesma instância.
hash() é usada para retornar um valor escalar a ser usado como o valor hash do objeto, o que determina onde ele vai na tabela de hash. Embora esse valor não precise ser único, objetos que são iguais devem ter o mesmo valor hash.
equals() é usada para determinar se dois objetos são iguais. É garantido que o objeto de comparação será uma instância da mesma classe que o objeto sujeito.