Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die folgenden Anweisungen gehen von einer sauberen Umgebung aus und zeigen, wie PHP 8.1, der Microsoft ODBC-Treiber, der Apache-Webserver und die Microsoft Drivers für PHP für SQL Server auf Ubuntu, Red Hat, Debian, SUSE, Alpine und macOS installiert werden. Diese Anweisungen empfehlen, die Treiber mit PECL zu installieren, aber Sie können die vordefinierten Binärdateien auch von der Microsoft Drivers für PHP für SQL Server GitHub-Projektseite herunterladen und sie nach den Anweisungen zum Laden der Microsoft Drivers für PHP für SQL Server installieren. Eine Erläuterung des Ladens der Erweiterung und warum wir die Erweiterungen nicht zu php.inihinzufügen, finden Sie im Abschnitt zum Laden der Treiber.
Die folgenden Anweisungen installieren PHP 8.1 standardmäßig mithilfe von pecl install, wenn die PHP 8.1-Pakete verfügbar sind. Möglicherweise müssen Sie zuerst ausführen pecl channel-update pecl.php.net . Einige unterstützte Linux-Distros verwenden standardmäßig PHP 7.1 oder eine frühere Version, die von der neuesten Version der PHP-Treiber für SQL Server nicht unterstützt wird. Lesen Sie stattdessen die Hinweise am Anfang jedes Abschnitts, um PHP 8.2 oder 8.3 zu installieren.
Außerdem sind Anweisungen zum Installieren des PHP FastCGI Process Managers, PHP-FPM, auf Ubuntu enthalten. PHP-FPM ist erforderlich, wenn Sie den nginx-Webserver anstelle von Apache verwenden.
Diese Anweisungen enthalten Zwar Befehle zum Installieren von SQLSRV- und PDO_SQLSRV-Treibern, die Treiber können jedoch unabhängig installiert und funktionieren. Benutzer, die sich mit der Anpassung ihrer Konfiguration vertraut machen, können diese Anweisungen so anpassen, dass sie für SQLSRV oder PDO_SQLSRV spezifisch sind. Beide Treiber weisen die gleichen Abhängigkeiten auf, außer dort, wo unten angegeben.
Weitere Informationen finden Sie in der Supportmatrix für die neueste unterstützte Betriebssystemversion.
Hinweis
Stellen Sie sicher, dass Sie die neueste ODBC-Treiberversion installiert haben, um eine optimale Leistung und Sicherheit sicherzustellen. Installationsanweisungen finden Sie unter Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) oder Installieren des Microsoft ODBC-Treibers für SQL Server (macOS).
Installieren auf Ubuntu
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie 8.1 durch 8.2 oder 8.3 in den folgenden Befehlen.
Schritt 1. Installieren von PHP (Ubuntu)
sudo su
add-apt-repository ppa:ondrej/php -y
apt-get update
apt-get install php8.1 php8.1-dev php8.1-xml -y --allow-unauthenticated
Schritt 2. Installieren der erforderlichen Komponenten (Ubuntu)
Installieren Sie den ODBC-Treiber für Ubuntu, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket installieren. Es wird vom pecl Befehl zum Installieren der PHP-Treiber verwendet.
sudo apt-get install unixodbc-dev
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (Ubuntu)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
exit
sudo phpenmod -v 8.1 sqlsrv pdo_sqlsrv
Wenn nur eine PHP-Version im System vorhanden ist, kann der letzte Schritt zu phpenmod sqlsrv pdo_sqlsrv vereinfacht werden.
Schritt 4. Installieren von Apache und Konfigurieren des Ladens von Treibern (Ubuntu)
sudo su
apt-get install libapache2-mod-php8.1 apache2
a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php8.1
exit
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (Ubuntu)
sudo service apache2 restart
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installieren auf Ubuntu mit PHP-FPM
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie 8.1 durch 8.2 oder 8.3 in den folgenden Befehlen.
Schritt 1. Installieren von PHP (Ubuntu mit PHP-FPM)
sudo su
add-apt-repository ppa:ondrej/php -y
apt-get update
apt-get install php8.1 php8.1-dev php8.1-fpm php8.1-xml -y --allow-unauthenticated
Überprüfen Sie den Status des PHP-FPM-Diensts, indem Sie Folgendes ausführen:
systemctl status php8.1-fpm
Schritt 2. Installieren der erforderlichen Komponenten (Ubuntu mit PHP-FPM)
Installieren Sie den ODBC-Treiber für Ubuntu, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket installieren. Der Befehl pecl wird verwendet, um die PHP-Treiber zu installieren.
Schritt 3. Installieren Sie die PHP-Treiber für Microsoft SQL Server (Ubuntu mit PHP-FPM)
sudo pecl config-set php_ini /etc/php/8.1/fpm/php.ini
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
exit
sudo phpenmod -v 8.1 sqlsrv pdo_sqlsrv
Wenn nur eine PHP-Version im System vorhanden ist, kann der letzte Schritt phpenmod sqlsrv pdo_sqlsrv vereinfacht werden.
Stellen Sie sicher, dass sich sqlsrv.ini und pdo_sqlsrv.ini in /etc/php/8.1/fpm/conf.d/ befinden:
ls /etc/php/8.1/fpm/conf.d/*sqlsrv.ini
Starten Sie den PHP-FPM Dienst neu:
sudo systemctl restart php8.1-fpm
Schritt 4. Installieren und Konfigurieren von nginx (Ubuntu mit PHP-FPM)
sudo apt-get update
sudo apt-get install nginx
sudo systemctl status nginx
Zum Konfigurieren von nginx müssen Sie die /etc/nginx/sites-available/default Datei bearbeiten. Fügen Sie index.php zur Liste unterhalb des folgenden Abschnitts # Add index.php to the list if you are using PHP hinzu.
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html index.php;
Entfernen Sie als Nächstes die Kommentare, und ändern Sie den Abschnitt # pass PHP scripts to FastCGI server wie folgt:
# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
Schritt 5. Starten Sie nginx neu, und testen Sie das Beispielskript (Ubuntu mit PHP-FPM)
sudo systemctl restart nginx.service
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installieren auf Red Hat
Schritt 1. Installieren von PHP (Red Hat)
Führen Sie die folgenden Befehle aus, um PHP auf Red Hat 7 zu installieren:
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie remi-php81 in den folgenden Befehlen durch remi-php82 für PHP 8.2 oder durch remi-php83 für PHP 8.3.
sudo su
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
subscription-manager repos --enable=rhel-7-server-optional-rpms
yum install yum-utils
yum-config-manager --enable remi-php81
yum update
# Note: The php-pdo package is required only for the PDO_SQLSRV driver
yum install php php-pdo php-pear php-devel
Führen Sie die folgenden Befehle aus, um PHP auf Red Hat 8 zu installieren:
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie remi-8.1 durch remi-8.2 oder remi-8.3 in den folgenden Befehlen.
sudo su
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf install yum-utils
dnf module reset php
dnf module install php:remi-8.1
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
dnf update
# Note: The php-pdo package is required only for the PDO_SQLSRV driver
dnf install php-pdo php-pear php-devel
Schritt 2. Installieren der erforderlichen Komponenten (Red Hat)
Installieren Sie den ODBC-Treiber für Red Hat 7 oder 8, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket installieren.
pecl wird vom Befehl verwendet, um die PHP-Treiber zu installieren.
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (Red Hat)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/30-pdo_sqlsrv.ini
echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/20-sqlsrv.ini
exit
Alternativ können Sie das Remi-Repository installieren:
sudo yum install php-sqlsrv
Schritt 4. Installieren von Apache (Red Hat)
sudo yum install httpd
SELinux ist standardmäßig installiert und wird im Erzwingungsmodus ausgeführt. Um Apache die Verbindung mit Datenbanken über SELinux zu ermöglichen, führen Sie den folgenden Befehl aus:
sudo setsebool -P httpd_can_network_connect_db 1
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (Red Hat)
sudo apachectl restart
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installieren auf Debian
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie 8.1 in den folgenden Befehlen durch 8.2 oder 8.3.
Schritt 1. Installieren von PHP (Debian)
sudo su
apt-get install curl apt-transport-https
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
apt-get update
apt-get install -y php8.1 php8.1-dev php8.1-xml php8.1-intl
Schritt 2. Installieren der erforderlichen Komponenten (Debian)
Installieren Sie den ODBC-Treiber für Debian, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket installieren. Es wird vom Befehl zum Installieren der pecl PHP-Treiber verwendet.
Möglicherweise müssen Sie auch das richtige Gebietsschema generieren, um die PHP-Ausgabe korrekt in einem Browser anzuzeigen. Führen Sie beispielsweise für das gebietsschema en_US UTF-8 die folgenden Befehle aus:
sudo su
sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
locale-gen
Möglicherweise müssen Sie /usr/sbin zu Ihrem $PATH hinzufügen, da sich die ausführbare Datei locale-gen dort befindet.
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (Debian)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini
exit
sudo phpenmod -v 8.1 sqlsrv pdo_sqlsrv
Wenn nur eine PHP-Version im System vorhanden ist, kann der letzte Schritt zu phpenmod sqlsrv pdo_sqlsrv vereinfacht werden. Wie bei locale-gen, phpenmod befindet sich in /usr/sbin , damit Sie dieses Verzeichnis möglicherweise zu Ihrem $PATHVerzeichnis hinzufügen müssen.
Schritt 4. Installieren von Apache und Konfigurieren des Treiberladevorgangs (Debian)
sudo su
apt-get install libapache2-mod-php8.1 apache2
a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php8.1
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (Debian)
sudo service apache2 restart
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installation auf SUSE
Hinweis
Ersetzen Sie in den folgenden Anweisungen <SuseVersion> durch Ihre Version von SUSE – wenn Sie SUSE Linux Enterprise Server 15 verwenden, wird sie SLE_15_SP3 oder SLE_15_SP4 (oder höher) sein. Verwenden Sie für SUSE 12 SLE_12_SP5 (oder höher). Nicht alle PHP-Versionen sind für alle Versionen von SUSE Linux verfügbar - bitte lesen Sie, http://download.opensuse.org/repositories/devel:/languages:/php welche Versionen von SUSE die Standardversion PHP zur Verfügung haben, oder überprüfen http://download.opensuse.org/repositories/devel:/languages:/php:/ Sie, welche anderen Versionen von PHP für welche Versionen von SUSE verfügbar sind.
Hinweis
Pakete für PHP 7.4 oder höher sind ab heute nicht für SUSE 12 verfügbar.
Schritt 1. Installieren von PHP (SUSE)
sudo su
zypper -n ar -f https://download.opensuse.org/repositories/devel:languages:php/<SuseVersion>/devel:languages:php.repo
zypper --gpg-auto-import-keys refresh
zypper -n install php8 php8-pdo php8-devel php8-openssl
Schritt 2. Installieren der erforderlichen Komponenten (SUSE)
Installieren Sie den ODBC-Treiber für SUSE, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket installieren. Es wird vom Befehl pecl verwendet, um die PHP-Treiber zu installieren.
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (SUSE)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/pdo_sqlsrv.ini
echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/sqlsrv.ini
exit
Schritt 4. Installieren von Apache und Konfigurieren des Treiberladevorgangs (SUSE)
sudo su
zypper install apache2 apache2-mod_php8
a2enmod php8
echo "extension=sqlsrv.so" >> /etc/php8/apache2/php.ini
echo "extension=pdo_sqlsrv.so" >> /etc/php8/apache2/php.ini
exit
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (SUSE)
sudo systemctl restart apache2
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installation unter Alpine
Hinweis
PHP 8.1 oder höher kann über Tests oder Edge-Repositorys für Alpine verfügbar sein. Stattdessen können Sie PHP aus der Quelle kompilieren.
Schritt 1. Installieren von PHP (Alpine)
PHP-Pakete für Alpine finden Sie im edge/community Repository. Aktivieren Sie das Community-Repository auf ihrer WIKI-Seite. Fügen Sie die folgende Zeile zu /etc/apk/repositories hinzu, wobei Sie <mirror> durch die URL eines Alpine-Repositoryspiegels ersetzen:
http://<mirror>/alpine/edge/community
Führen Sie dann Folgendes aus:
sudo su
apk update
# Note: The php*-pdo package is required only for the PDO_SQLSRV driver
# For PHP 7.*
apk add php7 php7-dev php7-pear php7-pdo php7-openssl autoconf make g++
# For PHP 8.*
apk add php8 php8-dev php8-pear php8-pdo php8-openssl autoconf make g++
# The following symbolic links are optional but useful
ln -s /usr/bin/php8 /usr/bin/php
ln -s /usr/bin/phpize8 /usr/bin/phpize
ln -s /usr/bin/pecl8 /usr/bin/pecl
ln -s /usr/bin/php-config8 /usr/bin/php-config
Schritt 2. Installieren der erforderlichen Komponenten (Alpine)
Installieren Sie den ODBC-Treiber für Alpine, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (Linux) befolgen. Stellen Sie sicher, dass Sie auch das unixodbc-dev Paket (sudo apk add unixodbc-dev) installieren. Der Befehl pecl wird verwendet, um die PHP-Treiber zu installieren.
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (Alpine)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/10_pdo_sqlsrv.ini
echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/20_sqlsrv.ini
Schritt 4. Installieren von Apache und Konfigurieren des Treiberladevorgangs (Alpine)
# For PHP 7.*
sudo apk add php7-apache2 apache2
# For PHP 8.*
sudo apk add php8-apache2 apache2
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (Alpine)
sudo rc-service apache2 restart
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Installieren unter macOS
Wenn Sie es noch nicht haben, installieren Sie Brew wie folgt:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Hinweis
Um PHP 8.2 oder 8.3 zu installieren, ersetzen Sie php@8.1 durch php@8.2 bzw. php@8.3 in den folgenden Befehlen.
Schritt 1. Installieren von PHP (macOS)
brew tap
brew tap homebrew/core
brew install php@8.1
PHP sollte jetzt in Ihrem Pfad sein. Führen Sie den Befehl aus php -v , um zu überprüfen, ob Sie die richtige Version von PHP ausführen. Wenn PHP sich nicht in Ihrem Pfad befindet oder nicht die richtige Version ist, führen Sie die folgenden Befehle aus:
brew link --force --overwrite php@8.1
Wenn Sie Apple M1 ARM64 verwenden, müssen Sie möglicherweise den Pfad festlegen:
export PATH="/opt/homebrew/bin:$PATH"
Schritt 2. Installieren der erforderlichen Komponenten (macOS)
Installieren Sie den ODBC-Treiber für macOS, indem Sie die Anweisungen zum Installieren des Microsoft ODBC-Treibers für SQL Server (macOS) befolgen.
Hinweis
Wenn Sie Apple M1 ARM64-Hardware verwenden, installieren Sie microsoft ODBC-Treiber 17.8+ direkt, ohne den Emulator Rosetta 2 zu verwenden.
Darüber hinaus müssen Sie möglicherweise die GNU Make Tools installieren:
brew install autoconf automake libtool
Schritt 3. Installieren der PHP-Treiber für Microsoft SQL Server (macOS)
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
Wenn Sie Apple M1 ARM64 verwenden, gehen Sie stattdessen wie folgt vor:
sudo CXXFLAGS="-I/opt/homebrew/opt/unixodbc/include/" LDFLAGS="-L/opt/homebrew/lib/" pecl install sqlsrv
sudo CXXFLAGS="-I/opt/homebrew/opt/unixodbc/include/" LDFLAGS="-L/opt/homebrew/lib/" pecl install pdo_sqlsrv
Schritt 4. Installieren von Apache und Konfigurieren des Ladens von Treibern (macOS)
Hinweis
Der neueste macOS 11.0 Big Sur ist mit Apache 2.4 vorinstalliert, aber Apple hat auch einige erforderliche Skripts entfernt. Die Lösung besteht darin, Apache 2.4 über Homebrew zu installieren und es dann zu konfigurieren, aber dies ist außerhalb des Umfangs für diese Installationsanleitung. Bitte lesen Sie Apache oder Homebrew, um detaillierte Anweisungen zu erhalten.
brew install apache2
Um die Apache-Konfigurationsdatei zu finden, httpd.confführen Sie für Ihre Apache-Installation Folgendes aus:
/usr/local/bin/apachectl -V | grep SERVER_CONFIG_FILE
Mit den folgenden Befehlen wird die erforderliche Konfiguration httpd.conf hinzugefügt. Stellen Sie sicher, dass Sie den durch den vorherigen Befehl zurückgegebenen Pfad anstelle von /usr/local/etc/httpd/httpd.conf ersetzen.
echo "LoadModule php7_module /usr/local/opt/php@8.1/lib/httpd/modules/libphp7.so" >> /usr/local/etc/httpd/httpd.conf
(echo "<FilesMatch .php$>"; echo "SetHandler application/x-httpd-php"; echo "</FilesMatch>";) >> /usr/local/etc/httpd/httpd.conf
Schritt 5. Starten Sie Apache neu, und testen Sie das Beispielskript (macOS)
sudo apachectl restart
Informationen zum Testen der Installation finden Sie unter Testen der Installation am Ende dieses Dokuments.
Testen der Installation
Um dieses Beispielskript zu testen, erstellen Sie eine Datei namens testsql.php im Dokumentstamm Ihres Systems. Dieser Pfad befindet sich /var/www/html/ auf Ubuntu, Debian und Red Hat, /srv/www/htdocs auf SUSE, /var/www/localhost/htdocs auf Alpine oder /usr/local/var/www auf macOS. Kopieren Sie das folgende Skript, und ersetzen Sie den Server, die Datenbank, den Benutzernamen und das Kennwort entsprechend.
SQLSRV-Beispiel
<?php
$serverName = "yourServername";
$connectionOptions = array(
"database" => "yourDatabase",
"uid" => "yourUsername",
"pwd" => "yourPassword"
);
function exception_handler($exception) {
echo "<h1>Failure</h1>";
echo "Uncaught exception: " , $exception->getMessage();
echo "<h1>PHP Info for troubleshooting</h1>";
phpinfo();
}
set_exception_handler('exception_handler');
// Establishes the connection
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn === false) {
die(formatErrors(sqlsrv_errors()));
}
// Select Query
$tsql = "SELECT @@Version AS SQL_VERSION";
// Executes the query
$stmt = sqlsrv_query($conn, $tsql);
// Error handling
if ($stmt === false) {
die(formatErrors(sqlsrv_errors()));
}
?>
<h1> Success Results : </h1>
<?php
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['SQL_VERSION'] . PHP_EOL;
}
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
function formatErrors($errors)
{
// Display errors
echo "<h1>SQL Error:</h1>";
echo "Error information: <br/>";
foreach ($errors as $error) {
echo "SQLSTATE: ". $error['SQLSTATE'] . "<br/>";
echo "Code: ". $error['code'] . "<br/>";
echo "Message: ". $error['message'] . "<br/>";
}
}
?>
PDO_SQLSRV-Beispiel
<?php
try {
$serverName = "yourServername";
$databaseName = "yourDatabase";
$uid = "yourUsername";
$pwd = "yourPassword";
$conn = new PDO("sqlsrv:server = $serverName; Database = $databaseName;", $uid, $pwd);
// Select Query
$tsql = "SELECT @@Version AS SQL_VERSION";
// Executes the query
$stmt = $conn->query($tsql);
} catch (PDOException $exception1) {
echo "<h1>Caught PDO exception:</h1>";
echo $exception1->getMessage() . PHP_EOL;
echo "<h1>PHP Info for troubleshooting</h1>";
phpinfo();
}
?>
<h1> Success Results : </h1>
<?php
try {
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['SQL_VERSION'] . PHP_EOL;
}
} catch (PDOException $exception2) {
// Display errors
echo "<h1>Caught PDO exception:</h1>";
echo $exception2->getMessage() . PHP_EOL;
}
unset($stmt);
unset($conn);
?>
Zeigen Sie Ihren Browser auf https://localhost/testsql.php (https://localhost:8080/testsql.php unter macOS). Sie sollten jetzt in der Lage sein, eine Verbindung mit Ihrer SQL Server/Azure SQL-Datenbank herzustellen. Wenn keine Erfolgsmeldung mit SQL-Versionsinformationen angezeigt wird, können Sie eine grundlegende Problembehandlung ausführen, indem Sie das Skript über die Befehlszeile ausführen:
php testsql.php
Wenn die Ausführung über die Befehlszeile erfolgreich ist, aber nichts in Ihrem Browser angezeigt wird, überprüfen Sie die Apache-Protokolldateien. Weitere Hilfe finden Sie in den Supportressourcen für orte, die Sie besuchen können.
Siehe auch
Erste Schritte mit den Microsoft Drivers für PHP für SQL Server
Laden der Microsoft Drivers für PHP für SQL Server
Systemanforderungen für die Microsoft Drivers für PHP für SQL Server