Files
php-doc-ru/reference/array/functions/array-any.xml
2024-11-27 09:06:35 +03:00

142 lines
4.7 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 679cf93fa1e54cde82fc9cf545966eb13bcb0638 Maintainer: malferov Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.array-any" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_any</refname>
<refpurpose>Проверяет, содержит ли массив &array; хотя бы один элемент, который удовлетворяет callback-функции</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>array_any</methodname>
<methodparam><type>array</type><parameter>array</parameter></methodparam>
<methodparam><type>callable</type><parameter>callback</parameter></methodparam>
</methodsynopsis>
<simpara>
Функция <function>array_any</function> возвращает &true;,
если <parameter>callback</parameter>-функция возвращает &true; хотя бы для одного элемента массива,
иначе функция возвращает &false;.
</simpara>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<simpara>
Массив (&array;), в котором требуется найти элемент.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>callback</parameter></term>
<listitem>
<para>
Callback-функция, которую функция вызовет для проверки элементов входного массива, со следующей сигнатурой:
<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>
Функция <function>array_any</function> вернёт &true; и не станет вызывать
callback-функцию для других элементов,
если функция обратного вызова вернёт &true;
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<simpara>
Функция возвращает &true;, если входной массив содержит хотя бы один элемент,
для которого <parameter>callback</parameter>-функция возвращает &true;, иначе
функция возвращает &false;.
</simpara>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>
Пример проверки функцией <function>array_any</function> того,
содержит ли массив хотя бы один элемент, который удовлетворяет callback-функции
</title>
<programlisting role="php">
<![CDATA[
<?php
$array = [
'a' => 'dog',
'b' => 'cat',
'c' => 'cow',
'd' => 'duck',
'e' => 'goose',
'f' => 'elephant'
];
// Проверим, содержит ли массив хотя бы одно название животного длиннее 5 букв
var_dump(array_any($array, function (string $value) {
return strlen($value) > 5;
}));
// Проверим, содержит ли массив хотя бы одно название животного короче 3 букв
var_dump(array_any($array, function (string $value) {
return strlen($value) < 3;
}));
// Проверим, содержит ли массив хотя бы одно нестроковое значение
var_dump(array_any($array, function (string $value, $key) {
return !is_string($key);
}));
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
bool(true)
bool(false)
bool(false)
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>array_all</function></member>
<member><function>array_filter</function></member>
<member><function>array_find</function></member>
<member><function>array_find_key</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
-->