1
0
mirror of https://github.com/php/doc-en.git synced 2026-04-26 08:48:10 +02:00
Files
archived-doc-en/reference/spl/functions/spl-object-hash.xml
T
Tyson Andre 8d226f128f Link to spl_object_id from similar functions
Using an integer is faster and more memory-efficient than creating a 32-byte
string hash.

`runkit7_object_id` is one way to polyfill PHP 7.2+ `spl_object_id`
in older PHP 7 versions and continues to exist in the PECL.

Closes GH-1198.
2021-12-12 16:15:16 +01:00

103 lines
2.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.spl-object-hash" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>spl_object_hash</refname>
<refpurpose>
Return hash id for given object
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>spl_object_hash</methodname>
<methodparam><type>object</type><parameter>object</parameter></methodparam>
</methodsynopsis>
<para>
This function returns a unique identifier for the object. This id can be
used as a hash key for storing objects, or for identifying an object, as long
as the object is not destroyed. Once the object is destroyed, its hash may
be reused for other objects. This behavior is similar to
<function>spl_object_id</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>object</parameter></term>
<listitem>
<para>
Any object.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
A string that is unique for each currently existing object and is always
the same for each object.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>A <function>spl_object_hash</function> example</title>
<programlisting role="php">
<![CDATA[
<?php
$id = spl_object_hash($object);
$storage[$id] = $object;
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
When an object is destroyed, its hash may be reused for other objects.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>spl_object_id</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->