svn: /phpdoc/pt_BR/trunk/appendices/ migration74/constants.xml migration74/deprecated.xml migration74/incompatible.xml migration74/new-classes.xml migration74/new-features.xml migration74/new-functions.xml migration74/other-changes.xml migration74/removed-extensions.xml migration74/windows-support.xml
[email protected] (Daniel Rodrigues Lima)
| Newsgroups | php.doc.pt-br |
|---|---|
| Message-ID | <[email protected]> |
geekcom Thu, 02 Jan 2020 22:03:16 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=348775
Log:
Sync with EN version - WIP
Changed paths:
A phpdoc/pt_BR/trunk/appendices/migration74/
A phpdoc/pt_BR/trunk/appendices/migration74/constants.xml
A phpdoc/pt_BR/trunk/appendices/migration74/deprecated.xml
A phpdoc/pt_BR/trunk/appendices/migration74/incompatible.xml
A phpdoc/pt_BR/trunk/appendices/migration74/new-classes.xml
A phpdoc/pt_BR/trunk/appendices/migration74/new-features.xml
A phpdoc/pt_BR/trunk/appendices/migration74/new-functions.xml
A phpdoc/pt_BR/trunk/appendices/migration74/other-changes.xml
A phpdoc/pt_BR/trunk/appendices/migration74/removed-extensions.xml
A phpdoc/pt_BR/trunk/appendices/migration74/windows-support.xml
svn-diffs-348775.txt
(text/x-diff, 65.5 KB)
Added: phpdoc/pt_BR/trunk/appendices/migration74/constants.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/constants.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/constants.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,165 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348016 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.constants" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Novas Constantes Globais</title>
+
+ <sect2 xml:id="migration74.constants.core">
+ <title>PHP Core</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara><constant>PHP_WINDOWS_EVENT_CTRL_C</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>PHP_WINDOWS_EVENT_CTRL_BREAK</constant></simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.constants.mbstring">
+ <title>Multibyte String</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara><constant>MB_ONIGURUMA_VERSION</constant></simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.constants.sockets">
+ <title>Sockets</title>
+
+ <para>Adicionadas as seguintes opções específicas para FreeBSD socket:</para>
+ <itemizedlist>
+ <listitem>
+ <simpara><constant>SO_LABEL</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>SO_PEERLABEL</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>SO_LISTENQLIMIT</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>SO_LISTENQLEN</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>SO_USER_COOKIE</constant></simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.constants.tidy">
+ <title>Tidy</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara><constant>TIDY_TAG_ARTICLE</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_ASIDE</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_AUDIO</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_BDI</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_CANVAS</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_COMMAND</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_DATALIST</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_DETAILS</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_DIALOG</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_FIGCAPTION</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_FIGURE</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_FOOTER</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_HEADER</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_HGROUP</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_MAIN</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_MARK</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_MENUITEM</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_METER</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_NAV</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_OUTPUT</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_PROGRESS</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_SECTION</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_SOURCE</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_SUMMARY</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_TEMPLATE</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_TIME</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_TRACK</constant></simpara>
+ </listitem>
+ <listitem>
+ <simpara><constant>TIDY_TAG_VIDEO</constant></simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/deprecated.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/deprecated.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/deprecated.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,280 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348038 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.deprecated">
+ <title>Recursos depreciados</title>
+
+ <sect2 xml:id="migration74.deprecated.core">
+ <title>PHP Core</title>
+
+ <sect3 xml:id="migration74.deprecated.core.nested-ternary">
+ <title>Operadores ternários aninhados sem parênteses explícitos</title>
+
+ <para>
+ Operações ternárias aninhadas devem usar explicitamente parênteses
+ para ditar a ordem das operações. Anteriormente, quando usada
+ sem parênteses, a associatividade esquerda não resultava
+ no comportamento esperado na maioria dos casos.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+1 ? 2 : 3 ? 4 : 5; // depreciado
+(1 ? 2 : 3) ? 4 : 5; // ok
+1 ? 2 : (3 ? 4 : 5); // ok
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.array-string-access-curly-brace">
+ <title>Acesso a valores de array e string usando chaves</title>
+
+ <para>
+ O acesso a valor de string e array usando a sintaxe de chaves está
+ depreciado. Use <literal>$var[$idx]</literal> ao invés de
+ <literal>$var{$idx}</literal>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.real">
+ <title>A conversão (real) e a função <function>is_real</function></title>
+
+ <para>
+ A conversão <literal>(real)</literal> está depreciada,
+ use <literal>(float)</literal> em seu lugar.
+ </para>
+ <para>
+ A função <function>is_real</function> também está depreciada,
+ use <function>is_float</function> em seu lugar.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.unbind-this">
+ <title>Desvinculando <literal>$this</literal> quando <literal>$this</literal> é usado</title>
+
+ <para>
+ Desvincular <literal>$this</literal> de uma closure não estática
+ que usa <literal>$this</literal> está depreciado.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.parent">
+ <title>A palavra chave <literal>parent</literal> sem uma classe parent</title>
+
+ <para>
+ Usar a palavra chave <literal>parent</literal> dentro de uma classe sem parent
+ está depreciado, e lançará um erro em tempo de compilação no futuro.
+ Atualmente um erro será gerado apenas se/quando o parent for
+ acessado em tempo de execução.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.allow-url-include">
+ <title>A diretiva INI allow_url_include</title>
+
+ <para>
+ A diretiva <link linkend="ini.allow-url-include">allow_url_include</link>
+ está depreciada. Ativá-la gerará
+ um aviso de depreciação na inicialização.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.invalid-base-characters">
+ <title>Caracteres inválidos nas funções de conversão de base</title>
+
+ <para>
+ Passar caracteres inválidos para as funções: <function>base_convert</function>,
+ <function>bindec</function>, <function>octdec</function> and
+ <function>hexdec</function>agora gerará um aviso de depreciação.
+ O resultado ainda será calculado como se os caracteres inválidos não existissem.
+ Os espaços em branco à esquerda e à direita, bem como os prefixos do tipo 0x (dependendo da base)
+ continuam sendo permitidos.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.array-key-exists-objects">
+ <title>Usando <function>array_key_exists</function> em objetos</title>
+
+ <para>
+ O uso de <function>array_key_exists</function> em objetos está depreciado.
+ Em vez disso <function>isset</function> ou <function>property_exists</function>
+ deve ser usado.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.magic-quotes-functions">
+ <title>Funções magic quotes</title>
+
+ <para>
+ As funções <function>get_magic_quotes_gpc</function> e <function>get_magic_quotes_runtime</function>
+ estão depreciadas. Elas sempre retornam &false;.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.hebrevc">
+ <title>Função <function>hebrevc</function></title>
+
+ <para>
+ A função <function>hebrevc</function> está depreciada.
+ Ela pode ser substituída por <literal>nl2br(hebrev($str))</literal> ou,
+ preferencialmente, pelo uso do suporte Unicode RTL.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.convert-cyr-string">
+ <title>Função <function>convert_cyr_string</function></title>
+
+ <para>
+ A função <function>convert_cyr_string</function> está depreciada.
+ Pode ser substituída por um dos <function>mb_convert_string</function>,
+ <function>iconv</function> ou <classname>UConverter</classname>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.money-format">
+ <title>Função<function>money_format</function></title>
+
+ <para>
+ A função <function>money_format</function> está depreciada.
+ Ela pode ser substituída pela funcionalidade intl <classname>NumberFormatter</classname>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.ezmlm-hash">
+ <title>Função <function>ezmlm_hash</function></title>
+
+ <para>
+ A função <function>ezmlm_hash</function> está depreciada.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.restore-include-path">
+ <title>Função <function>restore_include_path</function></title>
+
+ <para>
+ A função <function>restore_include_path</function> está depreciada.
+ Pode ser sbstituída por <literal>ini_restore('include_path')</literal>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.deprecated.core.implode-reverse-parameters">
+ <title>Implode com a ordem histórica dos parâmetros</title>
+
+ <para>
+ A passagem de parâmetros para a função <function>implode</function> na ordem reversa
+ está depreciada, use <literal>implode($glue, $parts)</literal>
+ em vez de <literal>implode($parts, $glue)</literal>.
+ </para>
+ </sect3>
+
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.com">
+ <title>COM</title>
+
+ <para>
+ A importação de bibliotecas de tipos com registro constante
+ que não diferencia maiúsculas de minúsculas foi depreciado.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.filter">
+ <title>Filter</title>
+
+ <para>
+ <constant>FILTER_SANITIZE_MAGIC_QUOTES</constant> está depreciado,
+ use <constant>FILTER_SANITIZE_ADD_SLASHES</constant> em seu lugar.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.mbstring">
+ <title>Multibyte String</title>
+
+ <para>
+ A passagem de um padrão não-string para a função <function>mb_ereg_replace</function>
+ está depreciado. Atualmente, os padrões não-string são interpretados como
+ pontos de código ASCII. No PHP 8, o padrão será interpretado como
+ uma string.
+ </para>
+ <para>
+ Passar a codificação como terceiro parâmetro para a função <function>mb_strrpos</function>
+ está depreciado. Em vez disso, passe um offset 0 e a codificação como quarto parâmetro.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.ldap">
+ <title>Lightweight Directory Access Protocol</title>
+
+ <para>
+ <function>ldap_control_paged_result_response</function> e
+ <function>ldap_control_paged_result</function> estão depreciados.
+ Os controles de paginação podem ser enviados junto com a função
+ <function>ldap_search</function>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.reflection">
+ <title>Reflection</title>
+
+ <para>
+ As chamadas para <methodname>ReflectionType::__toString</methodname> agora geram,
+ um aviso de depreciação. Este método foi depreciado em favor de
+ <methodname>ReflectionNamedType::getName</methodname> na documentação
+ a partir do PHP 7.1, mas não emitiu um aviso de depreciação por motivos técnicos.
+ </para>
+ <para>
+ Os métodos <literal>export()</literal> em todas as classes <classname>Reflection</classname>
+ foram depreciados. Construa um objeto <classname>Reflection</classname> e
+ converta-o em string em seu lugar:
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+// ReflectionClass::export(Foo::class, false) is:
+echo new ReflectionClass(Foo::class), "\n";
+
+// $str = ReflectionClass::export(Foo::class, true) is:
+$str = (string) new ReflectionClass(Foo::class);
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.deprecated.socket">
+ <title>Socket</title>
+
+ <para>
+ <constant>AI_IDN_ALLOW_UNASSIGNED</constant> e
+ <constant>AI_IDN_USE_STD3_ASCII_RULES</constant> para
+ <function>socket_addrinfo_lookup</function> foram depreciadas,
+ devido a uma depreciação upstream na glibc.
+ </para>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/incompatible.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/incompatible.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/incompatible.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,337 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348018 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.incompatible" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Alterações incompatíveis com versões anteriores</title>
+
+ <sect2 xml:id="migration74.incompatible.core">
+ <title>PHP Core</title>
+
+ <sect3 xml:id="migration74.incompatible.core.non-array-access">
+ <title>Acesso em estilo de array em não-array</title>
+
+ <para>
+ Tentar usar valores do tipo <type>null</type>, <type>bool</type>,
+ <type>int</type>, <type>float</type> ou <type>resource</type> como um
+ array (como <literal>$null["key"]</literal>) agora irá gerar um aviso.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.get-declared-classes">
+ <title>Função <function>get_declared_classes</function></title>
+
+ <para>
+ A função <function>get_declared_classes</function> não retorna mais
+ classes anônimas que ainda não foram instanciadas.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.fn">
+ <title>Palavra-chave<literal>fn</literal></title>
+
+ <para>
+ <literal>fn</literal> agora é uma palavra-chave reservada. Em particular,
+ ele não pode mais ser usado como um nome de função ou classe.
+ Ela ainda pode ser usado como um nome constante de método ou classe.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.php-tag">
+ <title>A tag <literal><?php</literal> no final do arquivo</title>
+
+ <para>
+ <literal><?php</literal> no final do arquivo (sem seguir a nova linha)
+ agora será interpretado como uma tag PHP de abertura. Antes, era interpretada
+ como uma short open tag seguida por um literal <literal>php</literal> e
+ resultava em um erro de sintaxe (com <literal>short_open_tag=1</literal>)
+ ou era interpretada como uma string literal <literal><?php</literal>
+ (com <literal>short_open_tag=0</literal>).
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.stream-wrappers">
+ <title>Stream wrappers</title>
+
+ <para>
+ Ao usar include/require em uma stream,
+ <methodname>streamWrapper::stream_set_option</methodname>
+ será chamado com a opção <constant>STREAM_OPTION_READ_BUFFER</constant>.
+ As implementações personalizadas do wrapper de fluxo podem precisar implementar
+ o método <methodname>streamWrapper::stream_set_option</methodname>
+ para evitar um aviso (sempre retornando &false; é uma implementação suficiente).
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.serialization">
+ <title>Serialização</title>
+
+ <para>
+ O formato <literal>o</literal> de serialização foi removido.
+ Como nunca é produzido pelo PHP, isso pode apenas interromper a desserialização de
+ strings criadas manualmente.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.password-algorithm-constants">
+ <title>Constantes do algoritmo de senha</title>
+
+ <para>
+ Os identificadores do algoritmo de hash de senha agora são sequências anuláveis
+ em vez de números inteiros.
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <constant>PASSWORD_DEFAULT</constant> era um int 1; agora é &null;
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <constant>PASSWORD_BCRYPT</constant> era um int 1; agora é uma string '2y'
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <constant>PASSWORD_ARGON2I</constant> era um int 2; agora é uma string 'argon2i'
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <constant>PASSWORD_ARGON2ID</constant> era um int 3; agora é uma string 'argon2id'
+ </simpara>
+ </listitem>
+ </itemizedlist>
+
+ <para>
+ Aplicações que usam corretamente as constantes PASSWORD_DEFAULT,
+ PASSWORD_BCRYPT, PASSWORD_ARGON2I e PASSWORD_ARGON2ID continuarão
+ funcionando corretamente.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.htmlentities">
+ <title>Função <function>htmlentities</function></title>
+
+ <para>
+ <function>htmlentities</function> agora emitirá um aviso
+ (em vez de um aviso estrito sobre os padrões) se for usado com
+ uma codificação para a qual apenas a substituição básica de entidade é suportada;
+ nesse caso, é equivalente a<function>htmlspecialchars</function>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.incompatible.core.fread-fwrite">
+ <title>Funções <function>fread</function> e <function>fwrite</function></title>
+
+ <para>
+ <function>fread</function> e <function>fwrite</function> agora retornarão
+ &false; se a operação falhar.
+ Antes uma string vazia ou 0 era retornado.
+ EAGAIN/EWOULDBLOCK não são considerados falhas.
+ </para>
+ <para>
+ Essas funções agora também emitem um aviso de falha,
+ como ao tentar gravar em um recurso de arquivo somente leitura.
+ </para>
+ </sect3>
+
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.bcmath">
+ <title>Funções matemáticas de precisão arbitrária BCMath</title>
+
+ <para>
+ As funções BCMath agora avisam se um número não bem formado é passado, como
+ <literal>"32foo"</literal>. O argumento será interpretado como zero, como antes.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.curl">
+ <title>CURL</title>
+
+ <para>
+ Tentar serializar uma classe <classname>CURLFile</classname> agora irá
+ gerar uma exceção. Antes, a exceção era lançada apenas na desserialização.
+ </para>
+ <para>
+ O uso de <constant>CURLPIPE_HTTP1</constant> está depreciado, e não é mais
+ suportado a partir do cURL 7.62.0.
+ </para>
+ <para>
+ O parâmetro <literal>$version</literal> de <function>curl_version</function>
+ está depreciado. Se qualquer valor diferente do padrão <constant>CURLVERSION_NOW</constant>
+ for passado, um aviso será gerado e o parâmetro será ignorado.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.datetime">
+ <title>Data e hora</title>
+
+ <para>
+ Chamar a função <function>var_dump</function> ou similar em uma instância de
+ <classname>DateTime</classname> ou <classname>DateTimeImmutable</classname>
+ não deixará mais propriedades acessíveis no objeto.
+ </para>
+ <para>
+ A comparação de objetos <classname>DateInterval</classname>
+ (usando <literal>==</literal>, <literal><</literal>, e assim por diante) agora gera um aviso
+ e sempre retorna &false;. Antes todos os objetos <classname>DateInterval</classname>
+ eram considerados iguais, a menos que tivessem propriedades.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.intl">
+ <title>Intl</title>
+
+ <para>
+ O valor padrão do parâmetro das funções <function>idn_to_ascii</function> e
+ <function>idn_to_utf8</function> agora é <constant>INTL_IDNA_VARIANT_UTS46</constant>
+ em vez de <constant>INTL_IDNA_VARIANT_2003</constant> depreciado.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.mysqli">
+ <title>MySQLi</title>
+
+ <para>
+ A funcionalidade do servidor incorporado foi removida. Foi quebrado desde
+ pelo menos o PHP 7.0.
+ </para>
+ <para>
+ A propriedade não documentada <literal>mysqli::$stat</literal> foi removida
+ em favor de <methodname>mysqli::stat</methodname>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.openssl">
+ <title>OpenSSL</title>
+
+ <para>
+ A função <function>openssl_random_pseudo_bytes</function> agora
+ lançará uma exceção em situações de erro, semelhante a <function>random_bytes</function>.
+ Em particular, um <classname>Error</classname> será lançado se o número de
+ bytes solicitados for menor ou igual a zero, e uma <classname>Exception</classname>
+ será lançada se não for possível reunir aleatoriedade suficiente.
+ O argumento <literal>$crypto_strong output</literal> é garantido para sempre
+ ser &true; se a função não for lançada, portanto, verificar explicitamente não é necessário.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.pcre">
+ <title>Expressões regulares (Perl-Compatible)</title>
+
+ <para>
+ Quando o modo <constant>PREG_UNMATCHED_AS_NULL</constant> é usado,
+ os grupos de captura sem correspondência à direita agora também serão definidos como &null; (ou
+ <literal>[null, -1]</literal> se a captura offset estiver ativada).
+ Isso significa que o tamanho de <literal>$matches</literal> sempre será o mesmo.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.pdo">
+ <title>Objetos de dados PHP</title>
+
+ <para>
+ A tentativa de serializar uma instância <classname>PDO</classname> ou
+ <classname>PDOStatement</classname> agora gerará
+ uma <classname>Exception</classname> em vez de uma <classname>PDOException</classname>,
+ consistente com outras classes internas que não oferecem suporte à serialização.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.reflection">
+ <title>Reflection</title>
+
+ <para>
+ Os objetos reflexion agora gerarão uma exceção se for feita
+ uma tentativa de serializá-los. A serialização de objetos reflexion nunca
+ foi suportada e resultou em objetos reflexion corrompidos. Foi explicitamente
+ proibido agora.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.spl">
+ <title>Standard PHP Library (SPL)</title>
+
+ <para>
+ Chamar <function>get_object_vars</function> em uma instância de <classname>ArrayObject</classname>
+ agora sempre retornará as propriedades do próprio <classname>ArrayObject</classname>
+ (ou de uma sub classe). Antes, ele retornava os valores do
+ array/object a menos que a flag <constant>ArrayObject::STD_PROP_LIST</constant>
+ fosse especificado.
+ </para>
+ <para>
+ Outras operações afetadas são:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <methodname>ReflectionObject::getProperties</methodname>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <function>reset</function>, <function>current</function>, etc.
+ Use os métodos de <interfacename>Iterator</interfacename> em seu lugar.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Potencialmente outros trabalhando nas propriedades do objeto como uma lista.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ <literal>(array)</literal> casts não são afetadas. Eles continuarão
+ retornando o array agrupado, ou as propriedades <classname>ArrayObject</classname>
+ dependendo se a flag <constant>ArrayObject::STD_PROP_LIST</constant>
+ é usada.
+ </para>
+ <para>
+ <methodname>SplPriorityQueue::setExtractFlags</methodname> lançará uma exceção
+ se zero for passado. Antes, isso geraria um erro fatal recuperável
+ na próxima operação de extração.
+ </para>
+ <para>
+ <classname>ArrayObject</classname>, <classname>ArrayIterator</classname>,
+ <classname>SplDoublyLinkedList</classname> e <classname>SplObjectStorage</classname>
+ agora oferecem suporte ao mecanismo <literal>__serialize()</literal> e <literal>__unserialize()</literal>
+ além da interface <interfacename>Serializable</interfacename>.
+ Isso significa que as payloads de serialização criadas em versões mais antigas do PHP ainda podem ser
+ desserializadas, mas as novas payloads criadas pelo PHP 7.4 não serão entendidas pelas versões mais antigas.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.incompatible.tokenizer">
+ <title>Tokenizer</title>
+
+ <para>
+ <function>token_get_all</function> agora emitirá um
+ token <constant>T_BAD_CHARACTER</constant> para caracteres
+ inesperados em vez de deixar para trás buracos no fluxo de token.
+ </para>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/new-classes.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/new-classes.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/new-classes.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348008 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.new-classes" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Novas Classes e Interfaces</title>
+
+ <sect2 xml:id="migration74.new-classes.reflection">
+ <title>Reflection</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <classname>ReflectionReference</classname>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/new-features.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/new-features.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/new-features.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348037 Maintainer: geekcom Status: wip --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.new-features" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Novos Recursos</title>
+
+ <sect2 xml:id="migration74.new-features.core">
+ <title>PHP Core</title>
+
+ <sect3 xml:id="migration74.new-features.core.typed-properties">
+ <title>Propriedades tipadas</title>
+
+ <para>
+ As propriedades de classe agora suportam declarações de tipo.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+class User {
+ public int $id;
+ public string $name;
+}
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ The above example will enforce that <literal>$user->id</literal> can only be
+ assigned <type>integer</type> values and <literal>$user->name</literal> can
+ only be assigned <type>string</type> values.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.arrow-functions">
+ <title>Arrow functions</title>
+
+ <para>
+ Arrow functions provide a shorthand syntax for defining functions
+ with implicit by-value scope binding.
+
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$factor = 10;
+$nums = array_map(fn($n) => $n * $factor, [1, 2, 3, 4]);
+// $nums = array(10, 20, 30, 40);
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.type-variance">
+ <title>Limited return type covariance and argument type contravariance</title>
+
+ <para>
+ The following code will now work:
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+class A {}
+class B extends A {}
+
+class Producer {
+ public function method(): A {}
+}
+class ChildProducer extends Producer {
+ public function method(): B {}
+}
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ Full variance support is only available if autoloading is used. Inside a
+ single file only non-cyclic type references are possible, because all
+ classes need to be available before they are referenced.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.null-coalescing-assignment-operator">
+ <title>Null coalescing assignment operator</title>
+
+ <para>
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$array['key'] ??= computeDefault();
+// is roughly equivalent to
+if (!isset($array['key'])) {
+ $array['key'] = computeDefault();
+}
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.unpack-inside-array">
+ <title>Unpacking inside arrays</title>
+
+ <para>
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$parts = ['apple', 'pear'];
+$fruits = ['banana', 'orange', ...$parts, 'watermelon'];
+// ['banana', 'orange', 'apple', 'pear', 'watermelon'];
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.numeric-literal-separator">
+ <title>Numeric literal separator</title>
+
+ <para>
+ Numeric literals can contain underscores between digits.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+6.674_083e-11; // float
+299_792_458; // decimal
+0xCAFE_F00D; // hexadecimal
+0b0101_1111; // binary
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.weakreference">
+ <title>Weak references</title>
+
+ <para>
+ Weak references allow the programmer to retain a reference to an object
+ that does not prevent the object from being destroyed.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.core.tostring-exceptions">
+ <title>Allow exceptions from __toString()</title>
+
+ <para>
+ Throwing exceptions from <link linkend="object.tostring">__toString()</link>
+ is now permitted. Previously this resulted in a fatal error. Existing
+ recoverable fatal errors in string conversions have been converted to
+ <classname>Error</classname> exceptions.
+ </para>
+ </sect3>
+
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.curl">
+ <title>CURL</title>
+
+ <para>
+ <classname>CURLFile</classname> now supports stream wrappers in addition
+ to plain file names, if the extension has been built against libcurl >= 7.56.0.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.filter">
+ <title>Filter</title>
+
+ <para>
+ The <constant>FILTER_VALIDATE_FLOAT</constant> filter now supports the
+ <literal>min_range</literal> and <literal>max_range</literal>
+ options, with the same semantics as <constant>FILTER_VALIDATE_INT</constant>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.ffi">
+ <title>FFI</title>
+
+ <para>
+ FFI is a new extension, which provides a simple way to call
+ native functions, access native variables, and create/access
+ data structures defined in C libraries.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.gd">
+ <title>GD</title>
+
+ <para>
+ Added the <constant>IMG_FILTER_SCATTER</constant> image filter
+ to apply a scatter filter to images.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.hash">
+ <title>Hash</title>
+
+ <para>
+ Added <literal>crc32c</literal> hash using Castagnoli's polynomial.
+ This CRC32 variant is used by storage systems, such as
+ iSCSI, SCTP, Btrfs and ext4.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.mbstring">
+ <title>Multibyte String</title>
+
+ <para>
+ Added the <function>mb_str_split</function> function, which provides
+ the same functionality as <function>str_split</function>, but operating
+ on code points rather than bytes.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.opcache">
+ <title>OPcache</title>
+
+ <para>
+ Support for preloading code has been added.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.pcre">
+ <title>Regular Expressions (Perl-Compatible)</title>
+
+ <para>
+ The <function>preg_replace_callback</function> and <function>preg_replace_callback_array</function>
+ functions now accept an additional <parameter>flags</parameter> argument, with support for the
+ <constant>PREG_OFFSET_CAPTURE</constant> and <constant>PREG_UNMATCHED_AS_NULL</constant> flags.
+ This influences the format of the matches array passed to to the callback function.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.pdo">
+ <title>PDO</title>
+
+ <para>
+ The username and password can now be specified as part of the PDO DSN for
+ the mysql, mssql, sybase, dblib, firebird and oci drivers. Previously this
+ was only supported by the pgsql driver. If a username/password is specified
+ both in the constructor and the DSN, the constructor takes precedence.
+ </para>
+ <para>
+ It is now possible to escape question marks in SQL queries to avoid them
+ being interpreted as parameter placeholders. Writing <literal>??</literal>
+ allows sending a single question mark to the database and e.g. use the
+ PostgreSQL JSON key exists (<literal>?</literal>) operator.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.pdo_oci">
+ <title>PDO_OCI</title>
+
+ <para>
+ <methodname>PDOStatement::getColumnMeta</methodname> is now available.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.pdo_sqlite">
+ <title>PDO_SQLite</title>
+
+ <para>
+ <literal>PDOStatement::getAttribute(PDO::SQLITE_ATTR_READONLY_STATEMENT)</literal>
+ allows checking whether the statement is read-only, i.e. if it doesn't modify
+ the database.
+ </para>
+ <para>
+ <literal>PDO::setAttribute(PDO::SQLITE_ATTR_EXTENDED_RESULT_CODES, true)</literal>
+ enables the use of SQLite3 extended result codes in <function>PDO::errorInfo</function>
+ and <function>PDOStatement::errorInfo</function>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.sqlite3">
+ <title>SQLite3</title>
+
+ <para>
+ Added <methodname>SQLite3::lastExtendedErrorCode</methodname>
+ to fetch the last extended result code.
+ </para>
+ <para>
+ Added <literal>SQLite3::enableExtendedResultCodes($enable = true)</literal>,
+ which will make <methodname>SQLite3::lastErrorCode</methodname>
+ return extended result codes.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-features.standard">
+ <title>Standard</title>
+
+ <sect3 xml:id="migration74.new-features.standard.strip-tags">
+ <title>strip_tags() with array of tag names</title>
+ <para>
+ <function>strip_tags</function> now also accepts an array of allowed tags:
+ instead of <literal>strip_tags($str, '<a><p>')</literal>
+ you can now write <literal>strip_tags($str, ['a', 'p'])</literal>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.standard.magic-serialize">
+ <title>Custom object serialization</title>
+ <para>
+ A new mechanism for custom object serialization has been added, which
+ uses two new magic methods: <literal>__serialize</literal>
+ and <literal>__unserialize</literal>.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+// Returns array containing all the necessary state of the object.
+public function __serialize(): array;
+
+// Restores the object state from the given data array.
+public function __unserialize(array $data): void;
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ The new serialization mechanism supersedes the
+ <interfacename>Serializable</interfacename> interface,
+ which will be deprecated in the future.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.standard.array-merge-no-args">
+ <title>Array merge functions without arguments</title>
+ <para>
+ <function>array_merge</function> and <function>array_merge_recursive</function>
+ may now be called without any arguments, in which case they will return an empty array.
+ This is useful in conjunction with the spread operator, e.g. <literal>array_merge(...$arrays)</literal>.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.standard.proc-open">
+ <title><function>proc_open</function> function</title>
+ <para>
+ <function>proc_open</function> now accepts an array instead of a
+ string for the command. In this case the process will be opened
+ directly (without going through a shell) and PHP will take care of
+ any necessary argument escaping.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+proc_open(['php', '-r', 'echo "Hello World\n";'], $descriptors, $pipes);
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ <para>
+ <function>proc_open</function> now supports
+ <literal>redirect</literal> and <literal>null</literal> descriptors.
+ <informalexample>
+ <programlisting role="php">
+<![CDATA[
+<?php
+// Like 2>&1 on the shell
+proc_open($cmd, [1 => ['pipe', 'w'], 2 => ['redirect', 1]], $pipes);
+// Like 2>/dev/null or 2>nul on the shell
+proc_open($cmd, [1 => ['pipe', 'w'], 2 => ['null']], $pipes);
+?>
+]]>
+ </programlisting>
+ </informalexample>
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.new-features.standard.sodium-argon-hash">
+ <title>argon2i(d) without libargon</title>
+ <para>
+ <function>password_hash</function> now has the argon2i and argin2id implementations
+ from the sodium extension when PHP is built without libargon.
+ </para>
+ </sect3>
+
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/new-functions.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/new-functions.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/new-functions.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348008 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.new-functions">
+ <title>Novas Funções</title>
+
+ <sect2 xml:id="migration74.new-functions.core">
+ <title>PHP Core</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <function>get_mangled_object_vars</function>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <function>password_algos</function>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <function>sapi_windows_set_ctrl_handler</function>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-functions.gd">
+ <title>GD</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <function>imagecreatefromtga</function>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-functions.openssl">
+ <title>OpenSSL</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <function>openssl_x509_verify</function>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-functions.pcntl">
+ <title>Process Control</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <function>pcntl_unshare</function>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.new-functions.sqlite3">
+ <title>SQLite3</title>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <methodname>SQLite3::backup</methodname>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <methodname>SQLite3Stmt::getSQL</methodname>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/other-changes.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/other-changes.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/other-changes.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,561 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348208 Maintainer: geekcom Status: wip --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.other-changes" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Outras Mudanças</title>
+
+ <sect2 xml:id="migration74.other-changes.performance">
+ <title>Melhorias de desempenho</title>
+
+ <sect3 xml:id="migration74.other-changes.performance.core">
+ <title>PHP Core</title>
+ <para>
+ A specialized VM opcode for the <function>array_key_exists</function>
+ function has been added, which improves performance of this function
+ if it can be statically resolved. In namespaced code, this may require
+ writing <literal>\array_key_exists()</literal> or explicitly importing
+ the function.
+ </para>
+ </sect3>
+
+ <sect3 xml:id="migration74.other-changes.performance.pcre">
+ <title>Regular Expressions (Perl-Compatible)</title>
+ <para>
+ When <function>preg_match</function> in UTF-8 mode (<literal>"u"</literal> modifier)
+ is repeatedly called on the same string (but possibly different offsets),
+ it will only be checked for UTF-8 validity once.
+ </para>
+ </sect3>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.ini">
+ <title>Changes to INI File Handling</title>
+ <para>
+ <literal>zend.exception_ignore_args</literal> is a new INI directive
+ for including or excluding arguments from stack traces generated
+ from exceptions.
+ </para>
+ <para>
+ <literal>opcache.preload_user</literal> is a new INI directive
+ for specifying the user account under which preloading
+ code is execute if it would otherwise be run as root (which is not
+ allowed for security reasons).
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.pkg-config">
+ <title>Migration to pkg-config</title>
+ <para>
+ A number of extensions have been migrated to exclusively use pkg-config for the
+ detection of library dependencies. Generally, this means that instead of using
+ <option role="configure">--with-foo-dir=DIR</option> or similar only
+ <option role="configure">--with-foo</option> is used. Custom library paths can be
+ specified either by adding additional directories to <literal>PKG_CONFIG_PATH</literal>
+ or by explicitly specifying compilation options through <literal>FOO_CFLAGS</literal>
+ and <literal>FOO_LIBS</literal>.
+ </para>
+ <para>
+ The following extensions and SAPIs are affected:
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>CURL:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-curl</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Enchant:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-enchant</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>FPM:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-fpm-systemd</option> now uses only pkg-config
+ for libsystem checks. The libsystemd minimum required version is 209.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>GD:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-gd</option> becomes
+ <option role="configure">--enable-gd</option>
+ (whether to enable the extension at all) and
+ <option role="configure">--with-external-gd</option>
+ (to opt into using an external libgd, rather than the bundled one).
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-png-dir</option> has been removed. libpng is required.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-zlib-dir</option> has been removed. zlib is required.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-freetype-dir</option>
+ becomes <option role="configure">--with-freetype</option>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-jpeg-dir</option> becomes
+ <option role="configure">--with-jpeg</option>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-webp-dir</option> becomes
+ <option role="configure">--with-webp</option>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-xpm-dir</option> becomes
+ <option role="configure">--with-xpm</option>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>IMAP:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-kerberos-systemd</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Intl:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-icu-dir</option> has been removed.
+ If <option role="configure">--enable-intl</option> is passed,
+ then libicu is always required.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>LDAP:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-ldap-sasl</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Libxml:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-libxml-dir</option> has been removed.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--enable-libxml</option> becomes
+ <option role="configure">--with-libxml</option>.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-libexpat-dir</option> has been renamed to
+ <option role="configure">--with-expat</option> and no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Litespeed:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-litespeed</option> becomes
+ <option role="configure">--enable-litespeed</option>.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Mbstring:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-onig</option> has been removed.
+ Unless <option role="configure">--disable-mbregex</option>
+ has been passed, libonig is required.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>ODBC:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-iodbc</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-unixODBC</option> without a directory now uses
+ pkg-config (preferred). Directory is still accepted for old versions without libodbc.pc.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>OpenSSL:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-openssl</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>PCRE:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-pcre-regex</option> has been removed.
+ Instead <option role="configure">--with-external-pcre</option>
+ is provided to opt into using an external PCRE library, rather
+ than the bundled one.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>PDO_SQLite:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-pdo-sqlite</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Readline:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-libedit</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Sodium:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-sodium</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>SQLite3:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-sqlite3</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>XSL:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-xsl</option> no longer accepts a directory.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <simpara>Zip:</simpara>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <option role="configure">--with-libzip</option> has been removed.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <option role="configure">--enable-zip</option> becomes
+ <option role="configure">--with-zip</option>.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ </itemizedlist>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.csv">
+ <title>CSV escaping</title>
+ <para>
+ <function>fputcsv</function>,
+ <function>fgetcsv</function>,
+ <methodname>SplFileObject::fputcsv</methodname>,
+ <methodname>SplFileObject::fgetcsv</methodname>, and
+ <methodname>SplFileObject::setCsvControl</methodname>
+ now accept an empty string as <literal>$escape</literal> argument,
+ which disables the proprietary PHP escaping mechanism.
+ </para>
+ <para>
+ The behavior of <function>str_getcsv</function> has been
+ adjusted accordingly (formerly, an empty string was identical
+ to using the default).
+ </para>
+ <para>
+ <methodname>SplFileObject::getCsvControl</methodname> now may also
+ return an empty string for the third array element, accordingly.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.filter">
+ <title>Data Filtering</title>
+ <para>
+ The <link linkend="book.filter">filter</link> extension no longer exposes
+ <option role="configure">--with-pcre-dir</option> for Unix builds and can now reliably
+ be built as shared when using <command>./configure</command>
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.gd">
+ <title>GD</title>
+ <para>
+ The behavior of <function>imagecropauto</function> in the bundled
+ libgd has been synced with that of system libgd:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <constant>IMG_CROP_DEFAULT</constant> is no longer falling
+ back to <constant>IMG_CROP_SIDES</constant>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Threshold-cropping now uses the algorithm of system libgd
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ The default <literal>$mode</literal> parameter of
+ <function>imagecropauto</function> has been changed to
+ <constant>IMG_CROP_DEFAULT</constant>; passing <literal>-1</literal>
+ is now deprecated.
+ </para>
+ <para>
+ <function>imagescale</function> now supports aspect ratio preserving
+ scaling to a fixed height by passing <literal>-1</literal>
+ as <literal>$new_width</literal>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.hash">
+ <title>HASH Message Digest Framework</title>
+ <para>
+ The <link linkend="book.hash">hash</link> extension cannot be disabled
+ anymore and is always an integral part of any PHP build, similar to
+ the <link linkend="book.datetime">date</link> extension.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.intl">
+ <title>Intl</title>
+ <para>
+ The <link linkend="book.intl">intl</link> extension
+ now requires at least ICU 50.1.
+ </para>
+ <para>
+ <classname>ResourceBundle</classname> now implements
+ <interfacename>Countable</interfacename>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.ldap">
+ <title>Lightweight Directory Access Protocol</title>
+ <para>
+ Support for nsldap and umich_ldap has been removed.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.libxml">
+ <title>Libxml</title>
+ <para>
+ All libxml-based extensions now require libxml 2.7.6 or newer.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.mbstring">
+ <title>Multibyte String</title>
+ <para>
+ The oniguruma library is no longer bundled with PHP, instead libonig needs
+ to be available on the system. Alternatively
+ <option role="configure">--disable-mbregex</option> can be used to disable
+ the mbregex component.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.opcache">
+ <title>OPcache</title>
+ <para>
+ The <option role="configure">--disable-opcache-file</option> and
+ <option role="configure">--enable-opcache-file</option> configure options
+ have been removed in favor of the
+ <link linkend="ini.opcache.file-cache">opcache.file_cache</link> INI directive.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.password">
+ <title>Password Hashing</title>
+ <para>
+ The <function>password_hash</function> and <function></function> functions
+ now accept nullable &string; and &integer; for <literal>$algo</literal> argument.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.pear">
+ <title>PEAR</title>
+ <para>
+ Installation of PEAR (including PECL) is no longer enabled by default. It
+ can be explicitly enabled using <option role="configure">--with-pear</option>.
+ This option is deprecated and may be removed in the future.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.reflection">
+ <title>Reflection</title>
+ <para>
+ The numeric values of the modifier constants
+ (<literal>IS_ABSTRACT</literal>,
+ <literal>IS_DEPRECATED</literal>,
+ <literal>IS_EXPLICIT_ABSTRACT</literal>,
+ <literal>IS_FINAL</literal>,
+ <literal>IS_IMPLICIT_ABSTRACT</literal>,
+ <literal>IS_PRIVATE</literal>,
+ <literal>IS_PROTECTED</literal>,
+ <literal>IS_PUBLIC</literal>, and
+ <literal>IS_STATIC</literal>) on the
+ <classname>ReflectionClass</classname>,
+ <classname>ReflectionFunction</classname>,
+ <classname>ReflectionMethod</classname>,
+ <classname>ReflectionObject</classname>, and
+ <classname>ReflectionProperty</classname>
+ classes have changed.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.simplexml">
+ <title>SimpleXML</title>
+ <para>
+ <classname>SimpleXMLElement</classname> now implements
+ <interfacename>Countable</interfacename>.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.sqlite3">
+ <title>SQLite3</title>
+ <para>
+ The bundled libsqlite has been removed. To build the
+ <link linkend="book.sqlite3">SQLite3</link> extension a
+ system libsqlite3 ≥ 3.7.4 is now required. To build the
+ <link linkend="ref.pdo-sqlite">PDO_SQLite</link> extension
+ a system libsqlite3 ≥ 3.5.0 is now required.
+ </para>
+ <para>
+ Serialization and unserialization of <classname>SQLite3</classname>,
+ <classname>SQLite3Stmt</classname> and <classname>SQLite3Result</classname>
+ is now explicitly forbidden. Formerly, serialization of instances of
+ these classes was possible, but unserialization yielded unusable objects.
+ </para>
+ <para>
+ The <literal>@param</literal> notation can now also be used to
+ denote SQL query parameters.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.other-changes.zip">
+ <title>Zip</title>
+ <para>
+ The bundled libzip library has been removed.
+ A system libzip >= 0.11 is now necessary to build the
+ <link linkend="book.zip">zip</link> extension.
+ </para>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/removed-extensions.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/removed-extensions.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/removed-extensions.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348008 Maintainer: geekcom Status: ready --><!-- CREDITS: geekcom -->
+
+ <sect1 xml:id="migration74.removed-extensions" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Extensões Removidas</title>
+
+ <para>
+ Essas extensões foram movidas para o PECL e não fazem mais parte da distribuição do PHP
+ As versões de pacotes PECL dessas extensões serão criadas
+ de acordo com a demanda do usuário
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ <link linkend="book.ibase">Firebird/Interbase</link>
+ - o acesso a um banco de dados baseado em InterBase e/ou Firebird
+ ainda está disponível com o driver PDO Firebird.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <link linkend="book.recode">Recode</link>
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ <link linkend="book.wddx">WDDX</link>
+ </simpara>
+ </listitem>
+ </itemizedlist>
+</sect1>
+
+<!-- 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
+-->
Added: phpdoc/pt_BR/trunk/appendices/migration74/windows-support.xml
===================================================================
--- phpdoc/pt_BR/trunk/appendices/migration74/windows-support.xml (rev 0)
+++ phpdoc/pt_BR/trunk/appendices/migration74/windows-support.xml 2020-01-02 22:03:16 UTC (rev 348775)
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- EN-Revision: 348541 Maintainer: geekcom Status: wip --><!-- CREDITS: geekcom -->
+
+<sect1 xml:id="migration74.windows-support" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <title>Suporte ao Windows</title>
+
+ <sect2 xml:id="migration74.windows-support.configure">
+ <title><command>configure</command> flags</title>
+ <para>
+ <command>configure</command> now regards additional <literal>CFLAGS</literal> and <literal>LDFLAGS</literal> set as environment
+ variables.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.windows-support.other">
+ <title>CTRL handling</title>
+ <para>
+ CTRL+C and CTRL+BREAK on console can be caught by setting a handler function
+ with <function>sapi_windows_set_ctrl_handler</function>.
+ </para>
+ <para>
+ <function>proc_open</function> on Windows can be passed a
+ "create_process_group" option. It is required if the child
+ process is supposed to handle CTRL events.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.windows-support.opcache">
+ <title>OPcache</title>
+ <para>
+ OPcache now supports an arbitrary number of separate caches per user via the
+ the INI directive <literal>opcache.cache_id</literal>.
+ All processes with the same cache ID and user share an OPcache instance.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.windows-support.stat">
+ <title>stat</title>
+ <para>
+ The stat implementation has been refactored.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ An inode number is delivered and is based on the NTFS file index.
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ The device number is now based on the volume serial number.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ <para>
+ Note that both values are derived from the system and provided as-is on 64-bit
+ systems. On 32-bit systems, these values might overflow the 32-bit integer in
+ PHP, so they're fake.
+ </para>
+ </sect2>
+
+ <sect2 xml:id="migration74.windows-support.sqlite3">
+ <title>libsqlite3</title>
+ <para>
+ libsqlite3 is no longer compiled statically into <filename>php_sqlite3.dll</filename>
+ and <filename>php_pdo_sqlite.dll</filename>, but rather available as <filename>libsqlite3.dll</filename>.
+ Refer to the installation instructions for <link linkend="sqlite3.installation">SQLite3</link> and
+ <link linkend="ref.pdo-sqlite.installation">PDO_SQLITE</link>, respectively.
+ </para>
+ </sect2>
+
+</sect1>
+
+<!-- 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
+-->