PHP configuration/pt-br

PHP is a web template system that accidentally grew up into a fairly general language. PHP's syntax, capabilities, and execution model bear vague similarities to Perl; scripts are loaded by an "interpreter", compiled to bytecode, and then executed. The PHP interpreter can be run from the command line, CGI-style, or more commonly as an in-process Apache module.

Compatibilidade do MediaWiki
Para o conjunto permitido das versões do PHP que pode utilizar com a sua versão do MediaWiki, consulte Compatibilidade#PHP.

Instalação
Por favor, consulte https://php.net/install.

Requerido
As seguintes extensões são requeridas pelo MediaWiki: ' Biblioteca de conversão de conjuntos de caráteres iconv Não é suportado MySQL e PostgreSQL através de PDO
 * Expressões Regulares Compatíveis com Perl
 * Sessão
 * Biblioteca Regular de PHP
 * Módulo de Objeto de Documento
 * JSON (alternativamente, clone pecl-json-c)
 * mbstring multibyte character string support
 * Deteção de tipo de MIME informação do ficheiro
 * Pelo menos um controlador da base de dados:
 * MySQL
 * PostgreSQL
 * SQLite (através de PDO)

Perl Compatible Regular Expressions, Session, Standard PHP Library, and JSON are enabled by default; Perl Compatible Regular Expressions and Standard PHP Library cannot be disabled since PHP 5.3.

Opcional
O MediaWiki precisa ou quer um número de recursos opcionais do PHP que precisam ser habilitados no tempo de compilação:


 * zlib compression library, optionally to compress the file cache
 * sockets support for network communication, if using memcached

Exemplo
We are successfully working with these compiler options:

 './configure' \ '--with-mysql' \ '--with-apxs2=/usr/sbin/apxs2' \ '--with-zlib' \ '--with-ldap' \ '--with-gd' \ '--with-jpeg-dir' \ '--with-iconv-dir' \ '--enable-mbstring' In detail, these configure options do the following:


 * --with-mysql : Allows PHP to query MySQL. This is an essential feature (I think). You will need to have MySQL installed to enable this option.
 * --with-apxs2=/usr/sbin/apxs2 : this is required if you want to build mod_php. APXS is for configuring compilation of an Apache module. You will need to change (or omit the path) for your specific system.
 * --with-zlib : Allows PHP to read / write zipped files and send compressed data to Apache ... or something like that
 * --with-ldap : Important if you want your wiki users to be verified by LDAP
 * --with-gd : Use this if you want image processing 'within' PHP, else you can use ImageMagick. Because this option requires that you have various libraries installed... but presumably IM has the same deps... oh well...
 * --with-jpeg-dir : Seems nonsensical
 * --with-iconv-dir : Seems nonsensical
 * --enable-mbstring : Allows multibyte character string support. This is optional, as slower custom code will be used if not available.

Armazenamento em cache do opcode

 * Veja:

Devido à grande base de código do MediaWiki, é altamente recomendado que um sistema seja usado para armazenar em cache os scripts compilados; Existem vários desses plugins para PHP, alguns gratuitos, alguns proprietários. Existe uma lista de alguns caches:
 * Alternative PHP Cache -- used at Wikimedia
 * Windows Cache Extension for PHP -- recommended for IIS users

Felizmente, todos estes parecem ser fáceis de instalar como plugins do Zend, você simplesmente instala uma biblioteca e altera o seu php.ini. Nenhuma recompilação exigente de todo o PHP!

Dependendo do cache e das opções usadas, você pode ter que executar uma operação especial sempre que atualizar arquivos de script.

O MediaWiki também pode interagir com esses caches e usá-los para o cache de objetos, veja.

Configurações em tempo de execução (php.ini)
Some settings in php.ini affects MediaWiki behavior and some of them are incompatible with MediaWiki


 * register_globals


 * safe_mode
 * Safe mode is an ill-conceived, broken-by-design setting in PHP; MediaWiki can work with this option on, but some features won't work.


 * magic_quotes_gpc
 * This options adds quotes to data in,   and  . MediaWiki can work with this option turned on, but will have to remove these quotes and thus will be slower.


 * magic_quotes_runtime
 * Esta opção corrompe a entrada de dados imprevisivelmente, adicionando citações em, e. arquivos abertos, dados recebidos do banco de dados etc. O MediaWiki se recusará a instalar se esta opção estiver ativada.


 * magic_quotes_sybase
 * igual a magic_quotes_runtime


 * mbstring.func_overload
 * Esta opção causa erros e pode corromper dados imprevisíveis; O MediaWiki se recusará a instalar se esta opção estiver ativada.


 * zend.ze1_compatibility_mode
 * Esta opção causa erros horríveis; O MediaWiki se recusará a instalar se esta opção estiver ativada.


 * memory_limit
 * O MediaWiki precisa de memória suficiente para funcionar. O limite mínimo deve ser algo como 20 MB, mas se você quiser que o MediaWiki funcione corretamente, considere usar pelo menos 50 MB.


 * disable_functions
 * Para poder encontrar o GNU diff3 e git durante o processo de instalação, esta entrada não deve conter passthru


 * post_max_size
 * If you are getting the error " " then it could be because this is set with a "MB" prefix, instead of just "M" (the former is interpreted at bytes, not megabytes).

Redimensionamento de imagens
ImageMagick can be used for image resizing. When it is not available, the GD PHP module is used instead where found.

Ver também

 * PHP Knowledgebase
 * PHP Tutorials
 * Suhosin (Hardened-PHP Project patch and extension)