2015-10-04 5 views
7

nicht initialisieren Ich suchte den ganzen Tag, um eine Lösung für sqlsrv dll auf PHP 7 VC14 x64 Thread Safe zu finden und ich habe keine Lösung gefunden. Hat jemand dieses Problem gelöst:php 7 sqlsrv

[04-Oct-2015 19:48:05 UTC] PHP Warning: PHP Startup: pdo_sqlsrv: Unable to initialize module 
Module compiled with module API=20131226 
PHP compiled with module API=20141001 
These options need to match 
in Unknown on line 0 

Hier ist meine php7 RC4 Informationen:

System Windows NT 6.0 build 6002 (Windows Server 2008 Standard Edition Service Pack 2) AMD64 
Build Date Sep 29 2015 17:15:28 
Compiler MSVC14 (Visual C++ 2015) 
Architecture x64 

Antwort

12

sqlsrv für PHP7 ist noch nicht fertig, aber das ist nicht wahr, es nicht freigegeben wurde seit 2012 Letzte Veröffentlichung ist ab Mai 2015. Maintainer ist Microsoft und Version für PHP7 ist für Anfang nächsten Jahres geplant.

https://github.com/Azure/msphpsql/issues/58

Update:

Treiber ist für PHP bis zu Version 7.1 auch für Linux heute (März 2017) zur Verfügung.

https://github.com/Microsoft/msphpsql

+0

Good find, ich war auf der Suche auf die Geschichte der PECL-Erweiterung Mitteilungen ... –

+0

Ist diese Antwort veraltet? – reformed

+0

Ja ist es. Diese Antwort ist zwei Jahre alt. Sie können heute den sqlsrv-Treiber bis PHP 7.1 verwenden (sogar unter Linux). – kba

1

Für die Aufzeichnung ist die direkte Verbindung zum SQL-Server-Bibliotheken hier

sqlsrvr for php 7

Ist die 32- und 64-Version Bits sowohl für ts und nts

4

Für zukünftige Referenz (getestet unter Windows 7 mit Xampp und PHP 7.0.13):

  1. Laden Sie hier die ODBC-Treiber herunter und installieren Sie sie: https://www.microsoft.com/en-US/download/details.aspx?id=36434

  2. Laden Sie hier die DLL herunter (sowohl 7.0. und 7.1.can zu finden): https://github.com/Microsoft/msphpsql/releases

  3. Öffnen Sie Ihre "php.ini" Datei und suchen Sie nach dem "extension_dir" -Zeile. Hier erfahren Sie, wo Sie die DDL-Dateien ablegen können. Hinweis: Auf Xampp, sollte es wie etwas sein: "C: \ xampp \ php \ ext"

enter image description here

  1. Setzen Sie die DLL-Dateien enthält im Zip-Archiv in Ihrem Erweiterungsverzeichnis. Stellen Sie sicher, dass Sie die richtige Version auswählen. Hinweis: Ich habe zunächst versucht, die x64-Version zu verwenden, aber es hat nicht funktioniert. Dann ersetzte ich die DLL durch die x86-Version und es funktionierte schließlich.

enter image description here

  1. Zurück in Ihrer Datei "php.ini", müssen Sie die folgende Zeile hinzufügen: "extension = php_pdo_sqlsrv_7_ts.dll". Hinweis: Xampp verwenden Sie die Laufflächenversion.

enter image description here

  1. Stellen Sie sicher, dass Apache-Dienst neu zu starten.

enter image description here

Codebeispiel für die Prüfung:

+1

Das hat bei mir funktioniert. – LautaroAngelico

Verwandte Themen