Repository navigation
Expand file tree
/
Copy patharray-find.xml
More file actions
143 lines (134 loc) · 4.13 KB
/
Copy patharray-find.xml
File metadata and controls
143 lines (134 loc) · 4.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: dfd68fd22aef25658bc9348176b55b504d26ab11 Maintainer: PhilDaiguille Status: ready -->
<!-- Reviewed: yes -->
<refentry xml:id="function.array-find" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_find</refname>
<refpurpose>Devuelve el primer elemento que valida la función de retrollamada</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>array_find</methodname>
<methodparam><type>array</type><parameter>array</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
</methodsynopsis>
<simpara>
<function>array_find</function> devuelve el valor del primer elemento del
&array; para el cual la función de retrollamada <parameter>callback</parameter>
devuelve &true;. Si ningún elemento es encontrado, la función devuelve &null;.
</simpara>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<simpara>
El &array; a recorrer.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
La función de retrollamada a utilizar, que debe respetar la siguiente firma:
<methodsynopsis>
<type>bool</type><methodname><replaceable>callback</replaceable></methodname>
<methodparam><type>mixed</type><parameter>value</parameter></methodparam>
<methodparam><type>mixed</type><parameter>key</parameter></methodparam>
</methodsynopsis>
Si esta función devuelve &true;, el valor del elemento será devuelto por
<function>array_find</function> y la función de retrollamada no será llamada
para los otros elementos.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<simpara>
La función devuelve el valor del primer elemento para el cual el
<parameter>callback</parameter> devuelve &true;. Si ningún elemento es encontrado,
la función devuelve &null;.
</simpara>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Ejemplo con <function>array_find</function></title>
<programlisting role="php">
<![CDATA[
<?php
$array = [
'a' => 'perro',
'b' => 'vaca',
'c' => 'gato',
'd' => 'pato',
'e' => 'ganso',
'f' => 'elefante'
];
// Encontrar el primer animal cuyo nombre tiene más de 5 caracteres.
var_dump(array_find($array, function (string $value) {
return strlen($value) > 5;
}));
// Encontrar el primer animal cuyo nombre comienza con f.
var_dump(array_find($array, function (string $value) {
return str_starts_with($value, 'f');
}));
// Encontrar el primer animal cuya clave es la primera letra de su nombre.
var_dump(array_find($array, function (string $value, $key) {
return $value[0] === $key;
}));
// Encontrar el primer animal cuya clave valida una RegEx.
var_dump(array_find($array, function ($value, $key) {
return preg_match('/^([a-f])$/', $key);
}));
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
string(5) "pato"
NULL
string(3) "gato"
string(3) "perro"
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>array_find_key</function></member>
<member><function>array_all</function></member>
<member><function>array_any</function></member>
<member><function>array_filter</function></member>
<member><function>array_reduce</function></member>
</simplelist>
</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
-->