1
0
mirror of https://github.com/php/doc-pl.git synced 2026-03-24 15:12:16 +01:00
Files
Maciej Sobaczewski 74a9ec438b Sync with EN
2025-05-14 03:58:20 +02:00

197 lines
5.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 2e60c5134e7a847c99f81eb3f7ecee1f5efeeace Maintainer: leszek Status: ready -->
<!-- $Revision$ -->
<refentry xml:id="function.in-array" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>in_array</refname>
<refpurpose>Sprawdza czy wartość istnieje w tablicy</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>in_array</methodname>
<methodparam><type>mixed</type><parameter>needle</parameter></methodparam>
<methodparam><type>array</type><parameter>haystack</parameter></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>strict</parameter><initializer>&false;</initializer></methodparam>
</methodsynopsis>
<para>
Szuka wartości <parameter>needle</parameter> w tablicy <parameter>haystack</parameter> używając luźnego porównania typów,
chyba że ustawiono parametr <parameter>strict</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>needle</parameter></term>
<listitem>
<para>
Szukana wartość.
</para>
<note>
<para>
Jeśli <parameter>needle</parameter> jest ciągiem tekstowym, to porównanie
uwzględnia wielkość znaków.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>haystack</parameter></term>
<listitem>
<para>
Tablica.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>strict</parameter></term>
<listitem>
<para>
Jeśli trzeci parametr <parameter>strict</parameter> ustawiono na &true;
to funkcja <function>in_array</function> będzie sprawdzać też
<link linkend="language.types">typy</link> przy szukaniu wartości
<parameter>needle</parameter> w tablicy <parameter>haystack</parameter>.
</para>
<note>
<para>
Przed PHP 8.0.0 wartość <parameter>needle</parameter> typu <literal>string</literal> będzie pasowała do wartości
<literal>0</literal> w tablicy w luźnym trybie porównywania (i vice versa). Może to przynieść niepożądane
rezultaty. Podobne przypadki brzegowe istnieją też dla innych typów. Jeśli nie jesteś absolutnie pewien
typów wartości, na których operujesz, zawsze używaj flagi <parameter>strict</parameter>, aby uniknąc nieoczekiwanego zachowania funkcji.
</para>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Zwraca &true; jeśli wartość <parameter>needle</parameter> została odnaleziona w tablicy,
W przeciwnym razie zwraca &false;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Przykład użycia <function>in_array</function></title>
<programlisting role="php">
<![CDATA[
<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Znaleziono Irix";
}
if (in_array("mac", $os)) {
echo "Znaleziono mac";
}
?>
]]>
</programlisting>
<para>
Drugi warunek nie jest spełniony poniewż <function>in_array</function>
zwraca uwagę na wielkość znaków, więc powyższy skrypt wyświetli:
</para>
<screen>
<![CDATA[
Znaleziono Irix
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Przykład użycia <function>in_array</function> z flagą strict</title>
<programlisting role="php">
<![CDATA[
<?php
$a = array('1.10', 12.4, 1.13);
if (in_array('12.4', $a, true)) {
echo "'12.4' znalezione ze ścisłym sprawdzaniem\n";
}
if (in_array(1.13, $a, true)) {
echo "1.13 znalezione ze ścisłym sprawdzaniem\n";
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
1.13 znalezione ze ścisłym sprawdzaniem
]]>
</screen>
</example>
</para>
<para>
<example>
<title>Przykład użycia <function>in_array</function> z tablicą jako parametrem needle</title>
<programlisting role="php">
<![CDATA[
<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "znaleziono 'ph'\n";
}
if (in_array(array ('f', 'i'), $a)) {
echo "znaleziono 'fi'\n";
}
if (in_array('o', $a)) {
echo "znaleziono 'o'\n";
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
znaleziono 'ph'
znaleziono 'o'
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>array_search</function></member>
<member><function>isset</function></member>
<member><function>array_key_exists</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
-->