%3CLINGO-SUB%20id%3D%22lingo-sub-1145008%22%20slang%3D%22en-US%22%3EMicrosoft%20Drivers%205.8.0%20for%20PHP%20for%20SQL%20Server%20Released%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1145008%22%20slang%3D%22en-US%22%3E%3CP%3EWe%20recently%20released%20Microsoft%20Drivers%20for%20PHP%20for%20SQL%20Server%2C%20version%205.8.0.%20This%20production%20release%20of%20the%20SQLSRV%20and%20PDO_SQLSRV%20drivers%20has%20been%20built%20with%20PHP%207.2%2C%207.3%2C%20and%207.4%20and%20tested%20on%20all%20supported%20platforms.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ENotable%20items%20about%20this%20release%20since%20the%20previous%20production%20release%20include%3A%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CH3%20id%3D%22toc-hId-1085513684%22%20id%3D%22toc-hId-1085513682%22%3EAdded%3C%2FH3%3E%3CUL%3E%3CLI%3ESupport%20for%20PHP%207.4%3C%2FLI%3E%3CLI%3ESupport%20for%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fdownloadmsodbcsql%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EMicrosoft%20ODBC%20Driver%2017.5%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3Eon%20all%20platforms%3C%2FLI%3E%3CLI%3ESupport%20for%20Debian%2010%20and%20Red%20Hat%208%20-%20require%20%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fdownloadmsodbcsql%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%22%3EMS%20ODBC%20Driver%2017.4%2B%3C%2FA%3E%3C%2FLI%3E%3CLI%3ESupport%20for%20macOS%20Catalina%2C%20-ERR%3AREF-NOT-FOUND-Alpine%20Linux%203.11%20(experimental)%2C%20and%20Ubuntu%2019.10%20-%20require%20ODBC%20Driver%2017.5%2B%3C%2FLI%3E%3CLI%3EFeature%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23929%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20new%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fissues%2F929%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3ELanguage%20option%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Pull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fwiki%2FFeatures%23language%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3E%23930%3C%2FA%3E%3C%2FLI%3E%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fwiki%2FFeatures%23data-classification-sensitivity-metadata%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EData%20Classification%20Sensitivity%20Metadata%20Retrieval%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20requires%20%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fdownloadmsodbcsql%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%22%3EODBC%20Driver%2017.4.2%2B%3C%2FA%3E%20and%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fwww.microsoft.com%2Fsql-server%2Fsql-server-2019%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3ESQL%20Server%202019%3C%2FA%3E%3C%2FLI%3E%3CLI%3EFeature%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231018%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20support%20for%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-PHP%20extended%20string%20types%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Pull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231043%3C%2FLI%3E%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fwiki%2FFeatures%23alwaysencryptedV2%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EAlways%20Encrypted%20with%20secure%20enclaves%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20requires%20%3CA%20href%3D%22https%3A%2F%2Faka.ms%2Fdownloadmsodbcsql%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%22%3EODBC%20Driver%2017.4%2B%3C%2FA%3E%20and%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fwww.microsoft.com%2Fsql-server%2Fsql-server-2019%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3ESQL%20Server%202019%3C%2FA%3E%3C%2FLI%3E%3CLI%3EFeature%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231063%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20add%20configurable%20options%20for%20locale%20settings%20in%20Linux%20and%20macOS%20-%20Pull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231069%3C%2FLI%3E%3C%2FUL%3E%3CH3%20id%3D%22toc-hId--721940779%22%20id%3D%22toc-hId--721940781%22%3ERemoved%3C%2FH3%3E%3CUL%3E%3CLI%3EDropped%20support%20for%20PHP%207.1%3C%2FLI%3E%3CLI%3E%3CSPAN%3EDropped%20support%20for%20SQL%20Server%202008%20R2%2C%20macOS%20Sierra%2C%20Ubuntu%2018.10%20and%20Ubuntu%2019.04%3C%2FSPAN%3E%3C%2FLI%3E%3C%2FUL%3E%3CH3%20id%3D%22toc-hId-1765572054%22%20id%3D%22toc-hId-1765572052%22%3EFixed%3C%2FH3%3E%3CUL%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23570%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20fetching%20varbinary%20data%20using%20client%20buffer%20with%20sqlsrv%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23972%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Removed%20redundant%20calls%20to%20retrieve%20the%20number%20of%20columns%20or%20rows%20in%20the%20current%20query%20result%20set%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23978%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20PDO_SQLSRV%20implementation%20of%20PDO%3A%3AgetColumnMeta%20now%20references%20cached%20metadata%20rather%20than%20making%20an%20ODBC%20call%20every%20time%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23979%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Added%20support%20for%20Data%20Classification%20Sensitivity%20metadata%20retrieval%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23985%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20memory%20issues%20with%20Data%20Classification%20data%20structures%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23432%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Having%20any%20invalid%20UTF-8%20name%20in%20the%20connection%20string%20will%20no%20longer%20invoke%20misleading%20error%20messages%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23909%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20potential%20exception%20with%20locale%20issues%20in%20macOS%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%23992%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Produced%20the%20correct%20error%20when%20requesting%20Data%20Classification%20metadata%20with%20ODBC%20drivers%20prior%20to%2017%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231001%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20compilation%20issue%20with%20PHP%207.4%20alpha%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231004%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20another%20compilation%20issue%20with%20PHP%207.4%20alpha%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231008%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Improved%20data%20caching%20when%20fetching%20datetime%20objects%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231011%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20a%20potential%20buffer%20overflow%20when%20parsing%20for%20escaped%20braces%20in%20the%20connection%20string%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231015%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20compilation%20issues%20and%20addressed%20various%20memory%20leaks%20detected%20by%20PHP%207.4%20beta%201%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fpull%2F1043%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3E%231027%3C%2FA%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Fixed%20how%20drivers%20handle%20query%20timeout%20settings%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231049%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Performance%20improvement%20for%20fetching%20from%20tables%20with%20many%20columns%20-%20cached%20the%20derived%20php%20types%20with%20column%20metadata%20to%20streamline%20data%20retrieval%3C%2FLI%3E%3CLI%3EPull%20Request%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231068%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Some%20cosmetic%20changes%20to%20source%20code%20as%20per%20suggestions%20from%20a%20static%20analysis%20tool%3C%2FLI%3E%3CLI%3EIssue%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231079%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E-%20Support%20sql_variant%20types%20when%20using%20client%20buffers%3C%2FLI%3E%3C%2FUL%3E%3CH3%20id%3D%22toc-hId--41882409%22%20id%3D%22toc-hId--41882411%22%3ELimitations%3C%2FH3%3E%3CUL%3E%3CLI%3ENo%20support%20for%20inout%20%2F%20output%20params%20when%20using%20sql_variant%20type%3C%2FLI%3E%3CLI%3ENo%20support%20for%20inout%20%2F%20output%20params%20when%20formatting%20decimal%20values%3C%2FLI%3E%3CLI%3EIn%20Linux%20and%20macOS%2C%20setlocale()%20only%20takes%20effect%20if%20it%20is%20invoked%20before%20the%20first%20connection.%20Attempting%20to%20set%20the%20locale%20after%20connecting%20will%20not%20work%3C%2FLI%3E%3CLI%3EAlways%20Encrypted%20requires%20%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fmsphpsql%2Fpull%2F992%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EMS%20ODBC%20Driver%2017%2B%3C%2FA%3E%3CUL%3E%3CLI%3EOnly%20Windows%20Certificate%20Store%20and%20Azure%20Key%20Vault%20are%20supported.%20Custom%20Keystores%20are%20not%20yet%20supported%3C%2FLI%3E%3CLI%3EIssue%20-ERR%3AREF-NOT-FOUND-%23716-%20With%20Always%20Encrypted%20enabled%2C%20named%20parameters%20in%20subqueries%20are%20not%20supported%3C%2FLI%3E%3CLI%3E%3CSPAN%3EIssue%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%231050%3CSPAN%3E%26nbsp%3B-%20With%20Always%20Encrypted%20enabled%2C%20insertion%20requires%20the%20column%20list%20for%20any%20tables%20with%20identity%20columns%3C%2FSPAN%3E%3C%2FLI%3E%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fsql%2Fconnect%2Fphp%2Fusing-always-encrypted-php-drivers%23limitations-of-the-php-drivers-when-using-always-encrypted%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%22%3EAlways%20Encrypted%20limitations%3C%2FA%3E%3C%2FLI%3E%3C%2FUL%3E%3C%2FLI%3E%3CLI%3E%3CSPAN%3EAlpine%20Linux%20support%20is%20currently%20experimental.%20Production%20support%20will%20be%20added%20in%20a%20future%20release%3C%2FSPAN%3E.%3C%2FLI%3E%3C%2FUL%3E%3CH3%20id%3D%22toc-hId--1849336872%22%20id%3D%22toc-hId--1849336874%22%3EKnown%20Issues%3C%2FH3%3E%3CUL%3E%3CLI%3E%3CSPAN%3EOn%20Alpine%20Linux%2C%20the%20Client-Side%20Cursors%20feature%20may%20cause%20an%20access%20violation%20if%20both%20sqlsrv%20and%20pdo_sqlsrv%20are%20enabled.%20Either%20enable%20only%20sqlsrv%20or%20pdo_sqlsrv%2C%20or%20build%20PHP%20from%20source%20by%20compiling%20the%20drivers%20statically.%3C%2FSPAN%3E%3C%2FLI%3E%3CLI%3EConnection%20pooling%20on%20Linux%20or%20macOS%20is%20not%20recommended%20with%20-ERR%3AREF-NOT-FOUND-unixODBC%26lt%3B%202.3.7%3C%2FLI%3E%3CLI%3EWhen%20pooling%20is%20enabled%20in%20Linux%20or%20macOS%3CUL%3E%3CLI%3EunixODBC%20%26lt%3B%3D%202.3.4%20(Linux%20and%20macOS)%20might%20not%20return%20proper%20diagnostic%20information%2C%20such%20as%20error%20messages%2C%20warnings%20and%20informative%20messages%3C%2FLI%3E%3CLI%3Edue%20to%20this%20unixODBC%20bug%2C%20fetch%20large%20data%20(such%20as%20xml%2C%20binary)%20as%20streams%20as%20a%20workaround.%20See%20the%20examples%20-ERR%3AREF-NOT-FOUND-here%3C%2FLI%3E%3C%2FUL%3E%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CH3%20id%3D%22toc-hId-638175961%22%20id%3D%22toc-hId-638175959%22%3ESurvey%3C%2FH3%3E%3CP%3ELet%20us%20know%20how%20we%20are%20doing%20and%20how%20you%20use%20our%20drivers%20by%20taking%20our%20-ERR%3AREF-NOT-FOUND-pulse%20survey.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CH3%20id%3D%22toc-hId--1169278502%22%20id%3D%22toc-hId--1169278504%22%3EInstall%3C%2FH3%3E%3CUL%3E%3CLI%3EOn%20Linux%20and%20macOS%20run%20the%20commands%20below%3A%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esudo%20pecl%20install%20sqlsrv%0Asudo%20pecl%20install%20pdo_sqlsrv%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CUL%3E%3CLI%3EWindows%20DLLs%20for%20PHP%207.2%20or%20above%20can%20be%20downloaded%20as%20a%20package%20from%20-ERR%3AREF-NOT-FOUND-Microsoft%2C%20or%20from%20the%20PECL%20repository%20for%26nbsp%3B-ERR%3AREF-NOT-FOUND-SQLSRV%20or%20-ERR%3AREF-NOT-FOUND-PDO_SQLSRV.%3C%2FLI%3E%3CLI%3EDirect%20downloads%20for%20released%20binaries%20can%20also%20be%20found%20at%20the%20-ERR%3AREF-NOT-FOUND-Github%20release%20tag.%3C%2FLI%3E%3C%2FUL%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EDavid%20Engel%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-1145008%22%20slang%3D%22en-US%22%3E%3CP%3E%3CSPAN%3EWe%20recently%20released%20Microsoft%20Drivers%20for%20PHP%20for%20SQL%20Server%2C%20version%205.8.0.%20This%20production%20release%20has%20been%20built%20with%20PHP%207.4%20and%20tested%20on%20all%20supported%20platforms.%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1145008%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3ESQLServerDrivers%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Senior Member

We recently released Microsoft Drivers for PHP for SQL Server, version 5.8.0. This production release of the SQLSRV and PDO_SQLSRV drivers has been built with PHP 7.2, 7.3, and 7.4 and tested on all supported platforms.

 

Notable items about this release since the previous production release include:

 

Added

Removed

  • Dropped support for PHP 7.1
  • Dropped support for SQL Server 2008 R2, macOS Sierra, Ubuntu 18.10 and Ubuntu 19.04

Fixed

  • Issue #570 - Fixed fetching varbinary data using client buffer with sqlsrv
  • Pull Request #972 - Removed redundant calls to retrieve the number of columns or rows in the current query result set
  • Pull Request #978 - PDO_SQLSRV implementation of PDO::getColumnMeta now references cached metadata rather than making an ODBC call every time
  • Pull Request #979 - Added support for Data Classification Sensitivity metadata retrieval
  • Pull Request #985 - Fixed memory issues with Data Classification data structures
  • Issue #432 - Having any invalid UTF-8 name in the connection string will no longer invoke misleading error messages
  • Issue #909 - Fixed potential exception with locale issues in macOS
  • Pull Request #992 - Produced the correct error when requesting Data Classification metadata with ODBC drivers prior to 17
  • Pull Request #1001 - Fixed compilation issue with PHP 7.4 alpha
  • Pull Request #1004 - Fixed another compilation issue with PHP 7.4 alpha
  • Pull Request #1008 - Improved data caching when fetching datetime objects
  • Pull Request #1011 - Fixed a potential buffer overflow when parsing for escaped braces in the connection string
  • Pull Request #1015 - Fixed compilation issues and addressed various memory leaks detected by PHP 7.4 beta 1
  • Issue #1027 - Fixed how drivers handle query timeout settings
  • Pull Request #1049 - Performance improvement for fetching from tables with many columns - cached the derived php types with column metadata to streamline data retrieval
  • Pull Request #1068 - Some cosmetic changes to source code as per suggestions from a static analysis tool
  • Issue #1079 - Support sql_variant types when using client buffers

Limitations

  • No support for inout / output params when using sql_variant type
  • No support for inout / output params when formatting decimal values
  • In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
  • Always Encrypted requires MS ODBC Driver 17+
    • Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
    • Issue #716 - With Always Encrypted enabled, named parameters in subqueries are not supported
    • Issue #1050 - With Always Encrypted enabled, insertion requires the column list for any tables with identity columns
    • Always Encrypted limitations
  • Alpine Linux support is currently experimental. Production support will be added in a future release.

Known Issues

  • On Alpine Linux, the Client-Side Cursors feature may cause an access violation if both sqlsrv and pdo_sqlsrv are enabled. Either enable only sqlsrv or pdo_sqlsrv, or build PHP from source by compiling the drivers statically.
  • Connection pooling on Linux or macOS is not recommended with unixODBC < 2.3.7
  • When pooling is enabled in Linux or macOS
    • unixODBC <= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
    • due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples here

 

Survey

Let us know how we are doing and how you use our drivers by taking our pulse survey.

 

Install

  • On Linux and macOS run the commands below:

 

 

sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv

 

 

  • Windows DLLs for PHP 7.2 or above can be downloaded as a package from Microsoft, or from the PECL repository for SQLSRV or PDO_SQLSRV.
  • Direct downloads for released binaries can also be found at the Github release tag.

 

David Engel