php-doc-en/reference/array/functions/prev.xml
Christoph Michael Becker 8b3858be3e Fix/improve wording
To detect whether the array pointer points beyond the end,
we have to check whether key() returns NULL (not the opposite).
We also reword to match reset() (r343965).

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@344002 c90b9560-bf6c-de11-be94-00142212c4b1
2018-01-28 12:31:16 +00:00

110 lines
2.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.prev" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>prev</refname>
<refpurpose>Rewind the internal array pointer</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>prev</methodname>
<methodparam><type>array</type><parameter role="reference">array</parameter></methodparam>
</methodsynopsis>
<para>
Rewind the internal array pointer.
</para>
<para>
<function>prev</function> behaves just like <function>next</function>,
except it rewinds the internal array pointer one place instead of advancing it.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<para>
The input array.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns the array value in the previous place that's pointed to by
the internal array pointer, or &false; if there are no more
elements.
</para>
&return.falseproblem;
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Example use of <function>prev</function> and friends</title>
<programlisting role="php">
<![CDATA[
<?php
$transport = array('foot', 'bike', 'car', 'plane');
$mode = current($transport); // $mode = 'foot';
$mode = next($transport); // $mode = 'bike';
$mode = next($transport); // $mode = 'car';
$mode = prev($transport); // $mode = 'bike';
$mode = end($transport); // $mode = 'plane';
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<simpara>
The beginning of an array is indistinguishable from a
<type>boolean</type> &false; element. To make the distinction, check that
the <function>key</function> of the <function>prev</function> element is not
&null;.
</simpara>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>current</function></member>
<member><function>end</function></member>
<member><function>next</function></member>
<member><function>reset</function></member>
<member><function>each</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
-->