Carregando os Drivers da Microsoft para PHP para SQL ServerLoading the Microsoft Drivers for PHP for SQL Server

BaixarBaixar o driver PHPDownloadDownload PHP Driver

Esta página apresenta instruções para carregar os Drivers da Microsoft para PHP para SQL ServerMicrosoft Drivers for PHP for SQL Server no espaço de processo do PHP.This page provides instructions for loading the Drivers da Microsoft para PHP para SQL ServerMicrosoft Drivers for PHP for SQL Server into the PHP process space.

Você pode baixar os drivers pré-criados para sua plataforma na página de projeto drivers da Microsoft para PHP para SQL Server github.You can download the prebuilt drivers for your platform from the Microsoft Drivers for PHP for SQL Server Github project page. Cada pacote de instalação contém arquivos de driver SQLSRV e PDO_SQLSRV em variantes threaded e não threaded.Each installation package contains SQLSRV and PDO_SQLSRV driver files in threaded and non-threaded variants. No Windows, eles também estão disponíveis em variantes de 32 bits e 64 bits.On Windows, they are also available in 32-bit and 64-bit variants. Consulte requisitos de sistema para os drivers da Microsoft para PHP para SQL Server para obter uma lista dos arquivos de driver contidos em cada pacote.See System Requirements for the Microsoft Drivers for PHP for SQL Server for a list of the driver files that are contained in each package. O arquivo de driver deve corresponder à versão do PHP, à arquitetura e ao threadedness do seu ambiente PHP.The driver file must match the PHP version, architecture, and threadedness of your PHP environment.

No Linux e no macOS, os drivers podem ser instalados como alternativa usando o PECL, conforme encontrado no tutorial de instalação.On Linux and macOS, the drivers can alternatively be installed using PECL, as found in the installation tutorial.

Você também pode criar os drivers da origem ao compilar PHP ou usando phpize.You can also build the drivers from source either when building PHP or by using phpize. Se você optar por criar os drivers da origem, terá a opção de criá-los estaticamente no php em vez de criá-los como extensões compartilhadas adicionando --enable-sqlsrv=static --with-pdo_sqlsrv=static (no Linux e MacOS) ou --enable-sqlsrv=static --with-pdo-sqlsrv=static ( ./configure no Windows) ao comando quando Compilando PHP.If you choose to build the drivers from source, you have the option of building them statically into PHP instead of building them as shared extensions by adding --enable-sqlsrv=static --with-pdo_sqlsrv=static (on Linux and macOS) or --enable-sqlsrv=static --with-pdo-sqlsrv=static (on Windows) to the ./configure command when building PHP. Para obter mais informações sobre o sistema de compilação phpizedo PHP e, consulte a documentação do PHP.For more information on the PHP build system and phpize, see the PHP documentation.

Movendo o arquivo de driver para o diretório de extensõesMoving the Driver File into Your Extension Directory

O arquivo de driver deve estar localizado em um diretório onde o tempo de execução do PHP possa encontrá-lo.The driver file must be located in a directory where the PHP runtime can find it. É mais fácil colocar o arquivo de driver em seu diretório de extensão PHP padrão-para localizar o diretório padrão, execute php -i | sls extension_dir no Windows ou php -i | grep extension_dir no linux/MacOS.It is easiest to put the driver file in your default PHP extension directory - to find the default directory, run php -i | sls extension_dir on Windows or php -i | grep extension_dir on Linux/macOS. Se você não estiver usando o diretório de extensão padrão, especifique um diretório no arquivo de configuração do PHP (PHP. ini), usando a opção extension_dir .If you are not using the default extension directory, specify a directory in the PHP configuration file (php.ini), using the extension_dir option. Por exemplo, no Windows, se você colocou o arquivo de driver em seu c:\php\ext diretório, adicione a seguinte linha a php. ini:For example, on Windows, if you have put the driver file in your c:\php\ext directory, add the following line to php.ini:

extension_dir = "c:\PHP\ext"  

Carregando o driver na inicialização do PHPLoading the Driver at PHP Startup

Para carregar o driver SQLSRV quando o PHP é iniciado, coloque antes o arquivo do driver no diretório de extensões.To load the SQLSRV driver when PHP is started, first move a driver file into your extension directory. Então, siga estas etapas:Then, follow these steps:

  1. Para habilitar o driver sqlsrv , modifique php. ini adicionando a seguinte linha à seção extensão, alterando o nome de arquivo conforme apropriado:To enable the SQLSRV driver, modify php.ini by adding the following line to the extension section, changing the filename as appropriate:

    No Windows:On Windows:

    extension=php_sqlsrv_72_ts.dll  
    

    No Linux, se você tiver baixado os binários predefinidos para sua distribuição:On Linux, if you have downloaded the prebuilt binaries for your distribution:

    extension=php_sqlsrv_72_nts.so  
    

    Se você tiver compilado o binário SQLSRV a partir da origem ou com PECL, ele será nomeado sqlsrv.so:If you have compiled the SQLSRV binary from source or with PECL, it will instead be named sqlsrv.so:

    extension=sqlsrv.so
    
  2. Para habilitar o driver PDO_SQLSRV , a extensão PDO (objetos de dados php) deve estar disponível, seja como uma extensão interna ou como uma extensão carregada dinamicamente.To enable the PDO_SQLSRV driver, the PHP Data Objects (PDO) extension must be available, either as a built-in extension, or as a dynamically loaded extension.

    No Windows, os binários do PHP pré-criados vêm com PDO interno, portanto, não há necessidade de modificar o php. ini para carregá-lo.On Windows, the prebuilt PHP binaries come with PDO built-in, so there is no need to modify php.ini to load it. Se, no entanto, você tiver compilado o php da origem e especificado uma extensão PDO separada para ser compilado, ele php_pdo.dllserá nomeado e você deverá copiá-lo para o diretório de extensão e adicionar a seguinte linha a php. ini:If, however, you have compiled PHP from source and specified a separate PDO extension to be built, it will be named php_pdo.dll, and you must copy it to your extension directory and add the following line to php.ini:

    extension=php_pdo.dll  
    

    No Linux, se você tiver instalado o PHP usando o Gerenciador de pacotes do sistema, o PDO provavelmente será instalado como uma extensão carregada dinamicamente chamada pdo.so.On Linux, if you have installed PHP using your system's package manager, PDO is probably installed as a dynamically loaded extension named pdo.so. A extensão PDO deve ser carregada antes da extensão PDO_SQLSRV ou o carregamento falhará.The PDO extension must be loaded before the PDO_SQLSRV extension, or loading will fail. Normalmente, as extensões são carregadas usando arquivos. ini individuais, e esses arquivos são lidos após php. ini.Extensions are usually loaded using individual .ini files, and these files are read after php.ini. Portanto, se pdo.so for carregado por meio de seu próprio arquivo. ini, um arquivo separado carregando o driver PDO_SQLSRV após PDO é necessário.Therefore, if pdo.so is loaded through its own .ini file, a separate file loading the PDO_SQLSRV driver after PDO is required.

    Para descobrir em qual diretório os arquivos. ini específicos da extensão estão localizados, execute php --ini e observe o diretório listado em Scan for additional .ini files in:.To find out which directory the extension-specific .ini files are located, run php --ini and note the directory listed under Scan for additional .ini files in:. Localize o arquivo que carrega pdo.so--provavelmente é prefixado por um número, como 10-PDO. ini.Find the file that loads pdo.so -- it is likely prefixed by a number, such as 10-pdo.ini. O prefixo numérico indica a ordem de carregamento dos arquivos. ini, enquanto os arquivos que não têm um prefixo numérico são carregados alfabeticamente.The numerical prefix indicates the loading order of the .ini files, while files that do not have a numerical prefix are loaded alphabetically. Crie um arquivo para carregar o arquivo de driver PDO_SQLSRV chamado 30-pdo_sqlsrv. ini (qualquer número maior do que o prefixo PDO. ini funciona) ou PDO_SQLSRV. ini (se PDO. ini não for prefixado por um número) e adicione a seguinte linha a ele, alterando o nome do arquivo como desejadoCreate a file to load the PDO_SQLSRV driver file called either 30-pdo_sqlsrv.ini (any number larger than the one that prefixes pdo.ini works) or pdo_sqlsrv.ini (if pdo.ini is not prefixed by a number), and add the following line to it, changing the filename as appropriate:

    extension=php_pdo_sqlsrv_72_nts.so
    

    Assim como acontece com o SQLSRV, se você tiver compilado o binário PDO_SQLSRV a partir de source ou com PECL, ele será nomeado PDO_SQLSRV. portanto:As with SQLSRV, if you have compiled the PDO_SQLSRV binary from source or with PECL, it will instead be named pdo_sqlsrv.so:

    extension=pdo_sqlsrv.so
    

    Copie esse arquivo para o diretório que contém os outros arquivos. ini.Copy this file to the directory that contains the other .ini files.

    Se você tiver compilado o PHP da origem com suporte de PDO interno, você não precisará de um arquivo. ini separado e poderá adicionar a linha apropriada acima ao PHP. ini.If you have compiled PHP from source with built-in PDO support, you do not require a separate .ini file, and you can add the appropriate line above to php.ini.

  3. Reinicie o servidor Web.Restart the Web server.

Observação

Para determinar se o driver foi carregado com êxito, execute um script que chama phpinfo().To determine whether the driver has been successfully loaded, run a script that calls phpinfo().

Para obter mais informações sobre as diretivas do php.ini, veja Descrição das principais diretivas do php.ini.For more information about php.ini directives, see Description of core php.ini directives.

Consulte TambémSee Also

Introdução aos Drivers da Microsoft para PHP para SQL ServerGetting Started with the Microsoft Drivers for PHP for SQL Server

Requisitos do sistema para os Microsoft Drivers for PHP for SQL ServerSystem Requirements for the Microsoft Drivers for PHP for SQL Server

Guia de programação para o Microsoft Drivers para PHP para SQL ServerProgramming Guide for the Microsoft Drivers for PHP for SQL Server

Referência da API do driver SQLSRVSQLSRV Driver API Reference

Referência da API do Driver PDO_SQLSRVPDO_SQLSRV Driver API Reference