В этом руководстве вы узнаете, как подключиться к SQL Server из PHP с помощью объектов данных PHP(PDO).
Чтобы подключить приложения PHP к SQL Server с помощью PHP PDO, вам необходимо правильно установить необходимые драйверы и настроить среды PHP. Вы можете выполнить следующие шаги для подключения PHP к SQL Server в Windows.
Шаг 1: Проверьте версию PHP
Откройте терминал на вашем компьютере и выполните следующую команду, чтобы проверить версию PHP:
php -v
Вывод будет выглядеть так:
PHP 8.2.12(cli)(built: Oct 24 2023 21:15:15)(ZTS Visual C++ 2019 x64) ...
Вывод указывает на версию PHP 8.2.12. Эту версию вы будете использовать для установки совместимых драйверов SQL Server.
Шаг 2: Установите драйвер Microsoft ODBC для SQL Server
ODBC означает Open Database Connectivity(открытое подключение к базам данных) и представляет собой стандартный API для доступа к различным типам систем управления базами данных(СУБД).
Для доступа к SQL Server из PHP необходимо установить драйвер ODBC.
- Перейдите на страницу загрузки драйвера ODBC для SQL Server.
- Загрузите соответствующий драйвер для архитектуры вашей системы(x86 или x64).
- Запустите установщик и следуйте инструкциям на экране для завершения установки.
- Перезагрузите компьютер.
Шаг 3: Установка расширений PHP для SQL Server
- Перейдите на страницу загрузки драйверов Microsoft для PHP для SQL Server.
- Загрузите zip-файл драйвера и извлеките его в каталог. Выходной каталог включает в себя множество файлов .dll.
- Скопируйте соответствующие файлы .dll для вашей версии PHP(php_pdo_sqlsrv_82_ts_x64.dll и php_sqlsrv_82_ts_x64.dll) в каталог ext вашей установки PHP, например D:\xampp\php\ext.
Чтобы выбрать правильные файлы .dll для вашей версии PHP, обратитесь к следующей странице.
Шаг 4: Включите расширения в файле php.ini
Сначала найдите файл php.ini, выполнив следующую команду на терминале:
php --ini
Он возвращает вывод, подобный следующему:
Configuration File(php.ini) Path: Loaded Configuration File: D:\xampp\php\php.ini Scan for additional .ini files in:(none) Additional .ini files parsed: (none)
Вывод показывает, что файл php.ini находится в каталоге D:\xampp\php\.
Во-вторых, откройте файл php.ini в текстовом редакторе и добавьте следующие строки, чтобы включить расширения драйвера SQL Server:
extension=php_pdo_sqlsrv_82_ts_x64.dll extension=php_sqlsrv_82_ts_x64.dll
В-третьих, сохраните изменения и выйдите из текстового редактора.
Наконец, перезапустите веб-сервер, чтобы изменения вступили в силу.
Шаг 5: Подключение к SQL Server с помощью PDO
1) Создайте новый файл config.php для хранения SQL Server:
<?php $db_server = 'localhost'; $db_name = 'BookStore'; $db_user = 'joe'; $db_password = 'YourPassword';
Пожалуйста, замените YourPassword на ваш надежный пароль.
2) Создайте новый файл connect.php, который подключается к SQL Server:
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); return $conn; } catch(PDOException $e) { die($e); } } return connect($db_server, $db_name, $db_user, $db_password);
Как это работает.
Сначала определите функцию connect(), которая подключается к SQL Server:
function connect($db_server, $db_name, $db_user, $db_password) {
Во-вторых, создайте имя источника данных(DNS) для подключения к SQL Server:
$dsn = "sqlsrv:server=$db_server;Database=$db_name";
В-третьих, создайте новый объект PDO с dsn, пользователем базы данных и паролем. Объект PDO представляет собой соединение с SQL Server:
$conn = new PDO($dsn, $db_user, $db_password);
$conn не будет равен нулю, если соединение установлено успешно.
В-четвертых, установите режим ошибок на исключение, чтобы при возникновении ошибки вы могли быстро ее обнаружить. Это режим ошибок по умолчанию, поэтому вы можете его игнорировать:
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
В-пятых, верните объект PDO:
return $conn;
В-шестых, остановите скрипт и покажите ошибку, если она возникает во время подключения к SQL Server:
die($e);
Наконец, вызовите функцию connect() с параметрами, указанными в config.php, и верните объект PDO:
return connect($db_server, $db_name, $db_user, $db_password);
3) Создайте новый файл index.php:
<?php $conn = require_once 'connect.php'; if($conn) { echo "Successfully connected to SQL Server database."; }
В файле index.php загрузите скрипт connect.php, получите объект PDO($conn) и выведите сообщение, если приложение успешно подключится к SQL Server.
4) Откройте index.php в веб-браузере. Если вы видите следующий вывод, это означает, что вы успешно подключили PHP к SQL Server:
Successfully connected to SQL Server database.
Краткое содержание
- Создайте новый объект PDO для подключения к базе данных SQL Server.