v5.6.0
版本发布时间: 2019-02-22 08:51:13
microsoft/msphpsql最新发布版本:v5.11.0(2023-03-07 09:58:04)
We are pleased to announce the next production release of the Microsoft Drivers for PHP for SQL Server. The SQLSRV and PDO_SQLSRV drivers have been built with PHP 7.1, 7.2, and 7.3 and tested on all supported platforms.
Notable items about this release (5.6.0) since the last production release (5.3.0) include the following:
Added
- Added support for PHP 7.3
- Added support for Linux SUSE 15, Ubuntu 18.10 and macOS Mojave
- Feature Request #415 - new options at connection and statement levels for both drivers for formatting decimal values in the fetched results
- Added support for Azure AD Access Token (in Linux / macOS this requires MS ODBC Driver 17+ and unixODBC 2.3.6+)
- Added support for Authentication with Azure Active Directory using Managed Identity for Azure Resources (requires MS ODBC Driver 17.3+)
- Feature Request #842 - new PDO_STMT_OPTION_FETCHES_DATETIME_TYPE flag for pdo_sqlsrv to return datetime as objects
- Feature Request #844 - add ReturnDatesAsStrings option to statement level for sqlsrv
Removed
- Dropped support for Linux Ubuntu 17.10 and macOS El Capitan
- Dropped support for PHP 7.0 - Version 5.3 is the last to support PHP 7.0.
Fixed
- Issue #434 - To avoid possible crashes, before freeing stmt in the destructor check if its dbh driver data is NULL
- Pull Request #833 - Streamlined the error handling to remove a potential cause of crash
- Pull Request #836 - Modified the config files to enable Spectre Mitigations (use /Qspectre switch) for PHP 7.2 (see related Request #878)
- Pull Request #854 - Clear Azure Key Vault data after connection attributes are successfully set or when exception is thrown
- Pull Request #855 - Improved performance by saving meta data before fetching and skipping unnecessary conversions for numeric data
- Pull Request #865 - Corrected the way SQLPutData and SQLParamData are used when sending stream data to the server
- Pull Request #878 - Modified the config files to enable Spectre Mitigations for PHP 7.1 (see related Request #836)
- Pull Request #891 - Improved performance of Unicode conversions
- Pull Request #892 - Removed warning messages while compiling extensions
- Pull Request #904 - Enabled compiling extensions statically into PHP
- Pull Request #907 - Initialized output param buffer when allocating extra space
- Pull Request #919 - Initialized a boolean variable before passing it by reference into a function that will modify its value
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
- Always Encrypted limitations
Known Issues
- 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
- With ColumnEncryption enabled, calling stored procedures with XML parameters does not work (Issue #674)
- In SUSE 15, Azure Active Directory connections may fail if PHP is installed from package (Issue #934)
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
To download Windows DLLs for PHP 7.1 or above from the PECL repository, please go to the SQLSRV or PDO_SQLSRV PECL page.
1、 CentOS7-7.1.tar 1.44MB
2、 CentOS7-7.2.tar 1.44MB
3、 CentOS7-7.3.tar 1.43MB
4、 Debian8-7.1.tar 1.44MB
5、 Debian8-7.2.tar 1.44MB
6、 Debian8-7.3.tar 1.44MB
7、 Debian9-7.1.tar 1.43MB
8、 Debian9-7.2.tar 1.43MB
9、 Debian9-7.3.tar 1.43MB
10、 Mac-7.1.tar 1.3MB
11、 Mac-7.2.tar 1.3MB
12、 Mac-7.3.tar 1.3MB
13、 Suse12-7.1.tar 1.45MB
14、 Suse12-7.2.tar 1.45MB
15、 Suse12-7.3.tar 1.45MB
16、 Suse15-7.1.tar 1.47MB
17、 Suse15-7.2.tar 1.47MB
18、 Suse15-7.3.tar 1.46MB
19、 Ubuntu16-7.1.tar 1.43MB
20、 Ubuntu16-7.2.tar 1.43MB
21、 Ubuntu16-7.3.tar 1.42MB
22、 Ubuntu18-7.1.tar 1.43MB
23、 Ubuntu18-7.2.tar 1.43MB
24、 Ubuntu18-7.3.tar 1.43MB
25、 Ubuntu1810-7.1.tar 1.5MB
26、 Ubuntu1810-7.2.tar 1.5MB
27、 Ubuntu1810-7.3.tar 1.5MB
28、 Windows-7.1.zip 811.02KB
29、 Windows-7.2.zip 796.4KB
30、 Windows-7.3.zip 795.2KB