|
1 | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
2 |
| -<!-- EN-Revision: 2e60c5134e7a847c99f81eb3f7ecee1f5efeeace Maintainer: leonardolara Status: ready --><!-- CREDITS: lucasr,felipe,airtonzanon,leonardolara --> |
| 2 | +<!-- EN-Revision: eaec4ab10a65c4515ee2fb899d06e89bae3754b0 Maintainer: leonardolara Status: ready --><!-- CREDITS: lucasr,felipe,airtonzanon,leonardolara --> |
3 | 3 | <refentry xml:id="function.list" xmlns="http://docbook.org/ns/docbook">
|
4 | 4 | <refnamediv>
|
5 | 5 | <refname>list</refname>
|
|
16 | 16 | Assim como <function>array</function>, não é exatamente uma função,
|
17 | 17 | e sim uma construção da própria linguagem. <function>list</function> é usada
|
18 | 18 | para criar uma lista de variáveis em apenas uma operação.
|
19 |
| - String não pode ser desempacotada e expressões como <function>list</function> |
20 |
| - não pode ser completamente vazia. |
| 19 | + Somente arrays e objetos que implementam <link linkend="class.arrayaccess">ArrayAccess</link> podem ser desconstruídos. |
| 20 | + Expressões <function>list</function> não podem ser completamente vazias. |
21 | 21 | </para>
|
22 | 22 | <note>
|
23 | 23 | <para>
|
24 |
| - Antes do PHP 7.1.0, <function>list</function> apenas funcionava em arrays numéricos e assumia |
| 24 | + Antes do PHP 7.1.0, <function>list</function> funcionava somente em arrays numéricos e assumia |
25 | 25 | que o índice numérico iniciava em 0.
|
26 | 26 | </para>
|
27 | 27 | </note>
|
28 | 28 | <para>
|
29 | 29 | A partir do PHP 7.1.0, <function>list</function> também pode conter chaves explícitas, permitindo a
|
30 |
| - desestruturação de arrays com chaves não inteiras ou não sequenciais. Para mais detalhes, |
31 |
| - consulte a <link linkend="language.types.array.syntax.destructuring">seção sobre desestruturação de arrays</link>. |
| 30 | + desconstrução de arrays com chaves não inteiras ou não sequenciais. Para mais detalhes, |
| 31 | + consulte a <link linkend="language.types.array.syntax.destructuring">seção sobre desconstrução de arrays</link>. |
32 | 32 | </para>
|
| 33 | + <note> |
| 34 | + <para> |
| 35 | + A tentativa de acessar uma chave de array que não foi definida é |
| 36 | + o mesmo que acessar qualquer outra variável indefinida: |
| 37 | + uma mensagem de erro de nível <constant>E_WARNING</constant> |
| 38 | + (nível <constant>E_NOTICE</constant> antes do PHP 8.0.0) será |
| 39 | + emitida e o resultado será &null;. |
| 40 | + </para> |
| 41 | + <para> |
| 42 | + A tentativa de desconstruir um valor escalar atribui &null; a todas as variáveis. |
| 43 | + A tentativa de desconstruir um objeto que não implementa ArrayAccess é um erro fatal. |
| 44 | + </para> |
| 45 | + </note> |
33 | 46 | </refsect1>
|
34 | 47 | <refsect1 role="parameters">
|
35 | 48 | &reftitle.parameters;
|
|
77 | 90 | <row>
|
78 | 91 | <entry>7.3.0</entry>
|
79 | 92 | <entry>
|
80 |
| - Foi adicionado suporte para atribuições de referência na desestruturação de array. |
| 93 | + Foi adicionado suporte para atribuições de referência na deconstrução de array. |
81 | 94 | </entry>
|
82 | 95 | </row>
|
83 | 96 | <row>
|
84 | 97 | <entry>7.1.0</entry>
|
85 | 98 | <entry>
|
86 | 99 | Agora é possível especificar chaves em <function>list</function>. Isso
|
87 |
| - habilita desestruturar os arrays com chaves não-integer e não-sequencial. |
| 100 | + habilita desconstruir os arrays com chaves não-inteiras e não-sequenciais. |
88 | 101 | </entry>
|
89 | 102 | </row>
|
90 | 103 | </tbody>
|
|
96 | 109 | &reftitle.examples;
|
97 | 110 | <para>
|
98 | 111 | <example>
|
99 |
| - <title>Exemplo da <function>list</function></title> |
| 112 | + <title>Exemplo de <function>list</function></title> |
100 | 113 | <programlisting role="php">
|
101 | 114 | <![CDATA[
|
102 | 115 | <?php
|
@@ -164,7 +177,7 @@ int(3)
|
164 | 177 | </para>
|
165 | 178 | <para>
|
166 | 179 | A ordem em que são definidos os índices do array para
|
167 |
| - ser consumido pela <function>list</function> é irrelevante. |
| 180 | + ser consumido por <function>list</function> é irrelevante. |
168 | 181 | </para>
|
169 | 182 | <para>
|
170 | 183 | <example>
|
@@ -205,9 +218,9 @@ string(1) "a"
|
205 | 218 | <example>
|
206 | 219 | <title><function>list</function> com chaves</title>
|
207 | 220 | <simpara>
|
208 |
| - A partir do PHP 7.1.0 <function>list</function> também pode agora conter |
209 |
| - chaves explícitas, na qual pode ser dada expressões arbitrárias. |
210 |
| - A mistura chaves de inteiros e strings é permitida; no entanto, elementos |
| 221 | + A partir do PHP 7.1.0, <function>list</function> também pode conter |
| 222 | + chaves explícitas que podem ser informadas como expressões arbitrárias. |
| 223 | + A mistura de chaves inteiras e strings é permitida; no entanto, elementos |
211 | 224 | com e sem chaves não podem ser misturados.
|
212 | 225 | </simpara>
|
213 | 226 | <programlisting role="php">
|
|
0 commit comments