Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta página apresenta instruções para carregar os Microsoft Drivers for PHP for SQL Server no espaço de processo do PHP.
Instale os drivers no Windows com PIE
O PIE, o PHP Installer for Extensions, instala os arquivos de driver pré-compilados correspondentes e os habilita na configuração de linha de comando do PHP. O Windows não precisa de uma cadeia de ferramentas de build.
Instale uma versão PHP suportada e o driver Microsoft ODBC para SQL Server.
Execute
php --ini. Se Arquivo de Configuração Carregado for(none), copie php.ini-development do diretório de instalação do PHP para php.ini no mesmo diretório.Em php.ini, defina o diretório de extensão e ative as
opensslextensões e:zipextension_dir = "ext" extension=openssl extension=zipEm um diretório de trabalho com permissão de escrita, baixe a versão estável mais recente de
pie.phar. O comando funciona no Prompt de Comando e no PowerShell:curl.exe -fL --output pie.phar https://github.com/php/pie/releases/latest/download/pie.pharSe você tem a CLI do GitHub, verifique se a PHP Foundation publicou o arquivo:
gh attestation verify --owner php .\pie.pharInstale ambos os drivers usando o executável PHP em
PATH:php .\pie.phar install microsoft/sqlsrv php .\pie.phar install microsoft/pdo_sqlsrvVerifique se o mesmo interpretador PHP da linha de comando carrega ambos os drivers:
php --ri sqlsrv php --ri pdo_sqlsrv
Para outros métodos de instalação de PIEs, veja a documentação de uso de PIEs.
Instale os drivers no Linux e macOS
Instale os drivers e suas dependências de plataforma com PIE conforme descrito no tutorial de instalação do Linux e macOS.
Instale drivers pré-compilados manualmente
Você pode baixar os drivers pré-montados na página Microsoft Drivers for PHP for SQL Server. O download do Windows é um arquivo ZIP que contém os arquivos de driver SQLSRV e PDO_SQLSRV para cada versão do PHP, arquitetura e modo de segurança de thread compatíveis. Selecione os arquivos que combinam com seu ambiente PHP. Veja Requisitos do Sistema para a lista de arquivos.
Você também pode criar os controladores a partir do código fonte, seja ao criar o PHP ou usando phpize. Se optar por criar os drivers com base na origem, você 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 (no Windows) ao comando ./configure ao criar o PHP. Para obter mais informações sobre o sistema de build do PHP e phpize, confira a documentação do PHP.
Movendo o arquivo de driver para o diretório de extensão
O arquivo de driver deve estar localizado em um diretório em que o runtime do PHP possa encontrá-lo. É 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, executado php -i | sls extension_dir no Windows ou php -i | grep extension_dir no 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 . Por exemplo, no Windows, se você colocar o arquivo de driver em seu c:\php\ext diretório, adicione a seguinte linha ao php.ini:
extension_dir = "c:\PHP\ext"
Carregando o driver na inicialização do PHP
Para carregar o driver SQLSRV quando o PHP é iniciado, coloque antes o arquivo do driver no diretório de extensões. Então, siga estas etapas:
Para habilitar o driver SQLSRV, modifique o php.ini adicionando a seguinte linha à seção de extensão, alterando o nome do arquivo de acordo com a sua versão do PHP e se a sua instalação é thread-safe ou não thread-safe:
Em Windows:
extension=php_sqlsrv_83_ts.dllNo Linux, se você baixou os binários predefinidos para sua distribuição:
extension=php_sqlsrv_83_nts.soSe você compilou o binário SQLSRV a partir da fonte, ou instalou com PIE ou PECL, seu nome é sqlsrv.so:
extension=sqlsrv.soPara habilitar o driver PDO_SQLSRV , a extensão PHP Data Objects (PDO) deve estar disponível, seja como uma extensão embutida ou como uma extensão carregada dinamicamente.
No Windows, os binários predefinidos do PHP vêm com PDO interno, portanto, não é necessário modificar php.ini para carregá-lo. Se, no entanto, você compilou o PHP de origem e especificou uma extensão PDO separada a ser criada, seu nome será
php_pdo.dll, e você deverá copiá-lo para o diretório de extensão e adicionar a seguinte linha ao php.ini:extension=php_pdo.dllNo Linux, se você instalou o PHP usando o gerenciador de pacotes do sistema, o PDO provavelmente será instalado como uma extensão carregada dinamicamente chamada pdo.so. A extensão PDO deve ser carregada antes que a extensão de PDO_SQLSRV ou o carregamento falhe. As extensões são carregadas usando arquivos .ini individuais e esses arquivos são lidos após php.ini. Portanto, se pdo.so for carregado por meio do próprio arquivo .ini dele, será necessário um arquivo separado que carrega o driver PDO_SQLSRV após PDO.
Para descobrir em qual diretório os arquivos .ini específicos da extensão estão localizados, execute
php --inie observe o diretório listado emScan for additional .ini files in:. Localize o arquivo que carrega o pdo.so. Ele deve ser prefixado com um número, como 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 em ordem alfabética. Crie um arquivo para carregar o arquivo de driver PDO_SQLSRV chamado 30-pdo_sqlsrv.ini (qualquer número maior que aquele que prefixa pdo.ini funciona) ou pdo_sqlsrv.ini (se pdo.ini não for prefixado com um número) e adicione a seguinte linha a ele, alterando o nome do arquivo conforme apropriado:extension=php_pdo_sqlsrv_3_nts.soAssim como no SQLSRV, se você compilou o binário PDO_SQLSRV a partir da fonte, ou instalou com PIE ou PECL, seu nome é pdo_sqlsrv.so:
extension=pdo_sqlsrv.soCopie esse arquivo para o diretório que contém os outros arquivos .ini.
Se você compilou o PHP de origem com suporte interno ao PDO, não precisará de um arquivo .ini separado e poderá adicionar a linha anterior ao php.ini.
Reinicie o servidor web.
Observação
Para determinar se o driver é carregado com êxito, execute um script que chame phpinfo().
Para obter mais informações sobre as diretivas do php.ini, veja Descrição das principais diretivas do php.ini.