Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 135 additions & 0 deletions reference/array/functions/array-any.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 679cf93fa1e54cde82fc9cf545966eb13bcb0638 Maintainer: pmlkvch 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-функцію для інших елементів вхідного масиву, якщо 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></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
-->
113 changes: 113 additions & 0 deletions reference/array/functions/array-change-key-case.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 58d11dfe19531e1355980b2892964c07dd8e8068 Maintainer: pmlkvch Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.array-change-key-case" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_change_key_case</refname>
<refpurpose>Змінює регістр ключів у масиві</refpurpose>
</refnamediv>

<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>array_change_key_case</methodname>
<methodparam><type>array</type><parameter>array</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>case</parameter><initializer><constant>CASE_LOWER</constant></initializer></methodparam>
</methodsynopsis>
<para>
Функція повертає масив <parameter>array</parameter>, у якому всі ключі переведені у нижній
або верхній регістр. Числові індекси залишаються без змін.
</para>
</refsect1>

<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>

<varlistentry>
<term><parameter>array</parameter></term>
<listitem>
<para>
Масив, над яким виконується операція
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><parameter>case</parameter></term>
<listitem>
<para>
Константа <constant>CASE_UPPER</constant> або <constant>CASE_LOWER</constant> (типово)
</para>
</listitem>
</varlistentry>

</variablelist>
</para>
</refsect1>

<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Функція повертає масив із ключами у нижньому або верхньому регістрі.
</para>
</refsect1>

<refsect1 role="examples">
&reftitle.examples;
<para>
<example xml:id="function.array-change-key-case.example-1">
<title>Приклад використання функції <function>array_change_key_case</function></title>
<programlisting role="php">
<![CDATA[
<?php
$input_array = array("FirSt" => 1, "SecOnd" => 4);
print_r(array_change_key_case($input_array, CASE_UPPER));
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Array
(
[FIRST] => 1
[SECOND] => 4
)
]]>
</screen>
</example>
</para>
</refsect1>

<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Якщо у масиві є ключі, які після зміни регістру стануть однаковими (наприклад, "<literal>keY</literal>" і "<literal>kEY</literal>"),
то значення, яке знаходиться далі у масиві, замінить попереднє.
</para>
</note>
</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
-->