sync with en rev

This commit is contained in:
leonardolara
2024-09-09 08:30:40 -03:00
parent d2f668b3e2
commit a089aaf202
5 changed files with 229 additions and 235 deletions

View File

@@ -1,358 +1,358 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: a89c6d71c7b65e3de84f26230fbf72c9b8948adf Maintainer: ae Status: ready --><!-- CREDITS: ernani,narigone,ae,dtgfranca -->
<sect1 xml:id="install.unix.apache2" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Apache 2.0 em sistemas Unix</title>
<para>
Esta seção contém notas e dicas específicas para a instalação do PHP em Apache 2.x
em sistemas Unix.
</para>
<!-- EN-Revision: b0dd627899cf5c57d3d64fac07e9b6579dfca082 Maintainer: ae Status: ready --><!-- CREDITS: ernani,narigone,ae,dtgfranca,leonardolara -->
<sect1 xml:id="install.unix.apache2" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Apache 2.0 em sistemas Unix</title>
<para>
Esta seção contém notas e dicas específicas para a instalação do PHP no Apache 2.x
em sistemas Unix.
</para>
&warn.apache2.compat;
&warn.apache2.compat;
<para>
A <link xlink:href="&url.apache2.docs;">documentação do Apache</link>
é a fonte mais importante sobre o servidor Apache 2.x.
Mais informações sobre opções de instalação podem ser encontradas
lá.
</para>
<para>
A <link xlink:href="&url.apache2.docs;">documentação do Apache</link>
é a fonte mais importante sobre o servidor Apache 2.x.
Mais informações sobre opções de instalação podem ser encontradas
lá.
</para>
<para>
A versão mais recente do servidor Apache HTTP pode ser obtida do
<link xlink:href="&url.apache;">site de download Apache</link>,
e uma versão correspondente do PHP pode ser obtida dos locais mencionados anteriormente.
Esse guia rápido cobre apenas o básico para iniciar o Apache 2.x
e PHP. Para mais informações leia a
<link xlink:href="&url.apache2.docs;">documentação do Apache</link>.
Os números de versão estão omitidos aqui, para garantir que
as instruções não fiquem desatualizadas. Nos exemplos abaixo 'NN' deve
ser substituído com a versão específica do Apache utilizado.
</para>
<para>
A versão mais recente do servidor Apache HTTP pode ser obtida do
<link xlink:href="&url.apache;">site de download Apache</link>,
e uma versão correspondente do PHP pode ser obtida dos locais mencionados anteriormente.
Esse guia rápido cobre apenas o básico para iniciar o Apache 2.x
e PHP. Para mais informações leia a
<link xlink:href="&url.apache2.docs;">documentação do Apache</link>.
Os números de versão estão omitidos aqui, para garantir que
as instruções não fiquem desatualizadas. Nos exemplos abaixo 'NN' deve
ser substituído com a versão específica do Apache utilizado.
</para>
<para>
Atualmente há duas versões do Apache 2.x. - 2.4 e 2.2.
Embora haja razões para escolher entre elas, 2.4 é a versão mais
atual, e aquela recomendada, se essa opção lhe for
possível. Entretanto as instruções aqui funcionarão para
ambas as versões 2.4 e 2.2. Importante notar que o Apache httpd 2.2 está em End Of Life,
e nenhum novo desenvolvimento ou correções serão realizados nele.
</para>
<para>
Atualmente há duas versões do Apache 2.x. - 2.4 e 2.2.
Embora haja razões para escolher entre elas, 2.4 é a versão mais
atual, e aquela recomendada, se essa opção lhe for
possível. Entretanto as instruções aqui funcionarão para
ambas as versões 2.4 e 2.2. Importante notar que o Apache httpd 2.2 está no final de sua vida,
e nenhum novo desenvolvimento ou correções serão realizados nele.
</para>
<orderedlist>
<listitem>
<para>Obter o Apache HTTP do endereço acima e
descompactar:</para>
<orderedlist>
<listitem>
<para>Obter o Apache HTTP do endereço acima e
descompactar:</para>
<informalexample>
<screen>
<informalexample>
<screen>
<![CDATA[
tar -xzf httpd-2.x.NN.tar.gz
]]>
</screen>
</informalexample>
</listitem>
</screen>
</informalexample>
</listitem>
<listitem>
<para>Da mesma forma, obter e descompactar os fontes do PHP:</para>
<listitem>
<para>Da mesma forma, obter e descompactar os fontes do PHP:</para>
<informalexample>
<screen>
<informalexample>
<screen>
<![CDATA[
tar -xzf php-NN.tar.gz
]]>
</screen>
</informalexample>
</listitem>
</screen>
</informalexample>
</listitem>
<listitem>
<para>
Compilar e instalar o Apache. Consulte a documentação de instalação do Apache
para mais detalhes/opções de compilação.
</para>
<listitem>
<para>
Compilar e instalar o Apache. Consulte a documentação de instalação do Apache
para mais detalhes/opções de compilação.
</para>
<informalexample>
<screen>
<informalexample>
<screen>
<![CDATA[
cd httpd-2_x_NN
./configure --enable-so
make
make install
]]>
</screen>
</informalexample>
</listitem>
</screen>
</informalexample>
</listitem>
<listitem>
<para>
Você agora tem um Apache 2.x.NN disponível em /usr/local/apache2,
<listitem>
<para>
Agora existe um Apache 2.x.NN disponível em /usr/local/apache2,
configurado com módulos carregáveis e o MPM prefork padrão.
Para testar a instalação utilize o procedimento de inicialização
do servidor Apache. Por exemplo:
<informalexample>
<screen>
<screen>
<![CDATA[
/usr/local/apache2/bin/apachectl start
]]>
</screen>
</screen>
</informalexample>
e depois pare o servidor para configurar o PHP:
<informalexample>
<screen>
<screen>
<![CDATA[
/usr/local/apache2/bin/apachectl stop
]]>
</screen>
</screen>
</informalexample>
</para>
</listitem>
</para>
</listitem>
<listitem>
<listitem>
<para>
Agora configure e compile o PHP. Aqui você pode personalizar o PHP
com várias opções, por exemplo quais extensões estarão disponíveis. Rode
./configure --help para uma lista de opções disponíveis. Em nosso exemplo
nós iremos configurar apenas com suporte ao Apache 2 e MySQL.
</para>
<para>
Agora configure e compile o PHP. Aqui pode-se personalizar o PHP
com várias opções, por exemplo quais extensões estarão disponíveis. Execute
./configure --help para uma lista de opções disponíveis. Em nosso exemplo,
iremos configurar apenas com suporte ao Apache 2 e MySQL.
</para>
<para>
Se você compilou o Apache a partir dos fontes como descrito acima os exemplos abaixo terão
caminhos coincidentes do apxs, mas se instalou de outra forma você terá de
ajustar o caminho para o apxs. Algumas distribuições renomeiam
apxs para apxs2.
</para>
<informalexample>
<screen>
<para>
Se o Apache foi compilado a partir do código-fonte como descrito acima, os exemplos abaixo terão
caminhos coincidentes do apxs, mas se foi instalado de outra forma, o caminho para o apxs
precisará ser ajustado. Algumas distribuições renomeiam
apxs para apxs2.
</para>
<informalexample>
<screen>
<![CDATA[
cd ../php-NN
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-pdo-mysql
make
make install
]]>
</screen>
</informalexample>
</screen>
</informalexample>
<para>
Se decidir modificar suas configurações depois da instalação você
terá de rodar novamente o configure, make e make install.
Terá também de
reiniciar o Apache para que o novo módulo seja carregado. Uma recompilação do
<para>
Se for decidido modificar as configurações depois da instalação,
os comandos 'configure', 'make' e 'make install' precisarão ser executados novamente.
Além disso,
o Apache precisará ser reinicializado para que o novo módulo seja carregado. Uma recompilação do
Apache não é necessária.
</para>
</para>
<para>
<para>
Note que por padrão 'make install' também instalará o PEAR,
várias ferramentas do PHP como phpize, instalar o PHP CLI, entre outros.
</para>
várias ferramentas do PHP como phpize, o PHP CLI, entre outros.
</para>
</listitem>
</listitem>
<listitem>
<para>
Configure seu php.ini:
</para>
<para>
Configure o php.ini:
</para>
<informalexample>
<screen>
<informalexample>
<screen>
<![CDATA[
cp php.ini-development /usr/local/lib/php.ini
]]>
</screen>
</informalexample>
</screen>
</informalexample>
<para>
Você pode editar seu arquivo .ini para configurar o PHP. Se preferir ter
<para>
Pode-se de editar o arquivo .ini para configurar o PHP. Se for desejado ter
um php.ini em outra localização, utilize --with-config-file-path=/some/path no
passo 5.
</para>
</para>
<para>
Se for preferível utilizar o php.ini-production, leia atentamente
esse arquivo, já que ele modifica o comportamento do PHP.
</para>
</listitem>
<listitem>
<para>
Edite o httpd.conf para carregar o módulo do PHP. O caminho à direita
da instrução LoadModule precisa apontar para o caminho do módulo do PHP
no sistema. O 'make install' acima pode ter feito isso
automaticamente, mas é bom confirmar.
</para>
<informalexample>
<para>
Se preferir utilizar o php.ini-production leia atentamente
esse arquivo, dado que ele modifica o comportamento do PHP.
No PHP 8:
</para>
</listitem>
<listitem>
<para>
Edite seu httpd.conf para carregar o módulo do PHP. O caminho a direita
da instrução LoadModule precisa apontar para o caminho do módulo do PHP
em seu sistema. O 'make install' acima pode ter feito isso
por você, mas é bom confirmar.
</para>
<informalexample>
<para>
No PHP 8:
</para>
<programlisting role="apache-conf">
<programlisting role="apache-conf">
<![CDATA[
LoadModule php_module modules/libphp.so
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
<informalexample>
<para>
No PHP 7:
</para>
<programlisting role="apache-conf">
<informalexample>
<para>
No PHP 7:
</para>
<programlisting role="apache-conf">
<![CDATA[
LoadModule php7_module modules/libphp7.so
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
Configure o Apache para interpretar certas extensões de arquivos do PHP. Por exemplo configurar
o Apache para interpretar arquivos .php. Em vez de utilizar apenas a diretiva Apache AddType
<para>
Configure o Apache para interpretar certas extensões de arquivos do PHP. Por exemplo, configurar
o Apache para interpretar arquivos .php. Em vez de utilizar apenas a diretiva Apache AddType,
é recomendado evitar uploads potencialmente perigosos e nomes de
arquivos como exploit.php.jpg de serem executados pelo PHP. Nesse exemplo
você pode ter qualquer extensão (ou extensões) configuradas.
arquivos como exploit.php.jpg que possam ser executados pelo PHP. Nesse exemplo,
pode-se ter qualquer extensão (ou extensões) configuradas.
Adicionaremos .php como demonstração.
</para>
</para>
<informalexample>
<programlisting role="apache-conf">
<informalexample>
<programlisting role="apache-conf">
<![CDATA[
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
<para>
Ou, pode-se acrescentar também .php, .php2, .php3, .php4, .php5, .php6 e
<para>
Alternativamente, pode-se acrescentar também .php, .php2, .php3, .php4, .php5, .php6 e
.phtml para ser executado como PHP, desta forma:
</para>
</para>
<informalexample>
<programlisting role="apache-conf">
<informalexample>
<programlisting role="apache-conf">
<![CDATA[
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
<para>
Para permitir que arquivos .phps sejam interpretados pelo filtro de fontes do PHP e
exibidos como código fonte destacado, utilize isso:
</para>
<para>
Para permitir que arquivos .phps sejam interpretados pelo filtro de fontes do PHP e
exibidos como código fonte destacado, utilize isso:
</para>
<informalexample>
<programlisting role="apache-conf">
<informalexample>
<programlisting role="apache-conf">
<![CDATA[
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
<para>
<para>
mod_rewrite pode ser utilizado para permitir que qualquer arquivo .php seja exibido
como código fonte destacado, sem ter de renomear ou copiar arquivos
para a extensão .phps, assim:
</para>
<informalexample>
<programlisting role="apache-conf">
<informalexample>
<programlisting role="apache-conf">
<![CDATA[
RewriteEngine On
RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]
]]>
</programlisting>
</informalexample>
</programlisting>
</informalexample>
<para>
<para>
O filtro de fontes PHP não deve ser ativado em ambiente de produção, onde
ele pode expor dados confidenciais ou de outra forma importantes, que estejam
incluídos no código fonte.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
Depois utilize a forma normal de iniciar o servidor Apache:
Depois utilize a forma normal de iniciar o servidor Apache:
</para>
<informalexample>
<screen>
<screen>
<![CDATA[
/usr/local/apache2/bin/apachectl start
]]>
</screen>
</informalexample>
</screen>
</informalexample>
<para>ou</para>
<para>ou</para>
<informalexample>
<screen>
<screen>
<![CDATA[
service httpd restart
]]>
</screen>
</informalexample>
</screen>
</informalexample>
</listitem>
</orderedlist>
</listitem>
</orderedlist>
<para>
Seguindo os passos acima você terá um Apache2 rodando com
suporte ao PHP como um módulo <literal>SAPI</literal>. Existem muitas outras
opções de configuração disponíveis no Apache e PHP. Para mais
informações rode <command>./configure --help</command> na código
fonte correspondente.
</para>
<para>
Apache pode ser construído com multithread através da seleção do MPM
<filename>worker</filename>, em vez do padrão MPM
<filename>prefork</filename>. Isso é possível
acrescentado-se o seguinte argumento no ./configure do
passo 3 acima:
</para>
<informalexample>
<screen>
<para>
Seguindo os passos acima, o Apache2 será executado com
suporte ao PHP como um módulo <literal>SAPI</literal>. Existem muitas outras
opções de configuração disponíveis para o Apache e para o PHP. Para mais
informações rode <command>./configure --help</command> no código
fonte correspondente.
</para>
<para>
O Apache pode ser construído com multithread através da seleção do MPM
<filename>worker</filename>, em vez do padrão MPM
<filename>prefork</filename>. Isso é possível
acrescentado-se o seguinte argumento no ./configure do
passo 3 acima:
</para>
<informalexample>
<screen>
<![CDATA[
--with-mpm=worker
]]>
</screen>
</informalexample>
<para>
Isso não deve ser feito sem conhecer as consequências
dessa decisão, ou pelo menos ter uma boa noção de
suas implicações. A documentação do Apache
sobre <link xlink:href="&url.apache2.mpm;">MPM-Modules</link>
discute essas questões em grandes detalhes.
</para>
<note>
<para>
A <link linkend="faq.installation.apache.multiviews">Apache MultiViews
FAQ</link> discute multiviews com o PHP.
</para>
</note>
<note>
<para>
Para construir uma versão multithread o sistema destino precisa suportar threads.
Nesse caso o PHP também deve ser compilado com o Zend Thread Safety (ZTS).
Nessa configuração nem todas as extensões estarão disponíveis.
A configuração recomendada é construir o Apache com o módulo MPM
<filename>prefork</filename> padrão.
</para>
</note>
</sect1>
</screen>
</informalexample>
<para>
Isso não deve ser feito sem conhecer as consequências
dessa decisão, ou pelo menos ter uma boa noção de
suas implicações. A documentação do Apache
sobre <link xlink:href="&url.apache2.mpm;">MPM-Modules</link>
discute essas questões em grandes detalhes.
</para>
<note>
<para>
A <link linkend="faq.installation.apache.multiviews">Apache MultiViews
FAQ</link> discute multiviews com o PHP.
</para>
</note>
<note>
<para>
Para construir uma versão multithread o sistema destino precisa suportar threads.
Nesse caso o PHP também deve ser compilado com o Zend Thread Safety (ZTS).
Nessa configuração nem todas as extensões estarão disponíveis.
A configuração recomendada é construir o Apache com o módulo MPM
<filename>prefork</filename> padrão.
</para>
</note>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <!-- EN-Revision: 0f53e8f37b7bf8513c93e5e2d67e7787f26ed693 Maintainer: ae Status: ready --><!-- CREDITS: lhsazevedo,ae,ABDALAZARD,leonardolara -->
<?xml version="1.0" encoding="utf-8"?> <!-- EN-Revision: 83e2056f071742c44d2b0bdbc8574d73697c7a08 Maintainer: ae Status: ready --><!-- CREDITS: lhsazevedo,ae,ABDALAZARD,leonardolara -->
<chapter xml:id="language.enumerations" xmlns="http://docbook.org/ns/docbook">
<title>Enumerações</title>
<sect1 xml:id="language.enumerations.overview">
@@ -6,7 +6,7 @@
<?phpdoc print-version-for="enumerations"?>
<para>
Enumerações, ou "Enums" permitem um desenvolvedor definir um tipo personalizado que está limitado a um
Enumerações, ou "Enums", permitem que um desenvolvedor defina um tipo personalizado que está limitado a um
número discreto de valores possíveis. Isso pode ser especialmente útil ao definir um
modelo de domínio, pois permite "tornar estados inválidos irrepresentáveis."
</para>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: e8c83816e0ca7a4136a5991b2227ddf00fa9adc6 Maintainer: lhsazevedo Status: ready --><!-- CREDITS: felipe,lucasr,fabioluciano,ae,lhsazevedo,ABDALAZARD -->
<!-- EN-Revision: 33968dfebb9b847733d02ee221b3b8054a101b41 Maintainer: lhsazevedo Status: ready --><!-- CREDITS: felipe,lucasr,fabioluciano,ae,lhsazevedo,ABDALAZARD,leonardolara -->
<refentry xml:id="function.array-map" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_map</refname>
@@ -40,7 +40,8 @@
</para>
<para>
&null; pode ser passado como um valor para <parameter>callback</parameter>
para realizar uma operação zip em múltiplos arrays.
para realizar uma operação zip em múltiplos arrays e retornar um array
onde cada elemento é um array contendo os elementos dos arrays de entrada do mesmo índice (veja o exemplo abaixo).
Se apenas <parameter>array</parameter> for fornecido,
<methodname>array_map</methodname> retornará o array de entrada.
</para>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: a35fce69cc4174f61cfa228ad677797c833f9cba Maintainer: leonardolara Status: ready --><!-- CREDITS: fernandoc,felipe,leonardolara -->
<!-- EN-Revision: 5564c64a6cafa5bc7325afe8555562df469fc6a0 Maintainer: leonardolara Status: ready --><!-- CREDITS: fernandoc,felipe,leonardolara -->
<book xml:id="book.gmp" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="bundledexternal" ?>
@@ -26,7 +26,7 @@
</note>
<note>
<para>
A partir do PHP 5.6, os operadores
Os operadores
<link linkend="language.operators.arithmetic">aritméticos</link>,
<link linkend="language.operators.bitwise">binários</link> e
<link linkend="language.operators.comparison">comparativos</link>
@@ -40,11 +40,6 @@
à força para o tipo float, resultando em perda de precisão.
</simpara>
</warning>
<note>
<simpara>
Esta extensão está disponível em plataformas plataforma Windows.
</simpara>
</note>
</preface>
<!-- }}} -->

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: d4d5216e7a965ca194f6b1c9dee84cecab2674e5 Maintainer: leonardolara Status: ready -->
<!-- EN-Revision: 5564c64a6cafa5bc7325afe8555562df469fc6a0 Maintainer: leonardolara Status: ready -->
<chapter xml:id="mysqlnd.config" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.runtime;
@@ -248,9 +248,7 @@ d:t:x:O,/tmp/mysqlnd.trace
</programlisting>
<note>
<para>
Este recurso está disponível apenas com uma compilação de depuração do PHP. Funciona
no Microsoft Windows se estiver usando uma compilação de depuração de PHP e o PHP foi
construído usando o Microsoft Visual C versão 9 ou superior.
Este recurso está disponível apenas com uma compilação de depuração do PHP.
</para>
</note>
<para></para>