Підготовка типових дат і часу у відеоролику з підтримкою драйвера SQLSRV - SQL Server
Завантажити драйвер PHP Завантажити драйвер PHP
При використанні драйвери sqlsrv Драйвери Microsoft SQL Server для PHP Драйвери Microsoft для PHP для SQL Server можна отримати типи дат і часу ( smalldatetime , DateTime , дата , час , datetime2 та DateTimeOffset ) у вигляді строк, вказавши наступне. У строгому з'єднанні чи на рівні інструкцій: При використанні драйвера SQLSRV для драйверів Microsoft SQL Server для PHP Драйвери Microsoft для PHP для SQL Server ви можете отримати типи дат і часу ( smalldatetime , date date , date , time , datetime2 , and datetimeoffset ) як рядки, вказавши наступний параметр у рядку з'єднання або на рівні оператора:
'ReturnDatesAsStrings' => вірно
Значення по умолчанию - false . Це означає, що типи smalldatetime , date date , date , time , datetime2 та datetimeoffset возвращаются як об'єкти PHP PHP . За замовчуванням є false , що означає, що типи smalldatetime , date date , date , time , datetime2 , and datetime offset будуть повернуті як PHP DateTime об’єкти. Якщо цей параметр встановлений на рівні інструкцій, він переорієнтовує функціональні рівні рівнянь. Якщо цей параметр встановлений на рівні заяви, він перекриває налаштування рівня з'єднання.
Драйвер PDO_SQLSRV по умолчанию возвращает типи дат і часу у вигляді строк. Драйвер PDO_SQLSRV повертає типи дати та часу як рядки за замовчуванням. Можна отримати їх у види об’єктів DateTime PHP, см . інструкції за видаленням типових дат і часу у вигляді об’єктів PHP DateTime з підтримкою PDO_SQLSRV Щоб отримати їх як об'єкти PHP DateTime, див Як: Отримати типи дати та часу у вигляді об’єктів часу PHP за допомогою PDO_SQLSRV
Пример Приклад
Слідуючий приклад показує синтаксис, вказує на вивільнення типових дат і часів у вигляді строк. Наступний приклад показує синтаксис, що вказує на отримання типів дати та часу у вигляді рядків.
<? php $ serverName = "MyServer"; $ connectionInfo = array ("База даних" => "AdventureWorks", 'ReturnDatesAsStrings' => вірно); $ conn = sqlsrv_connect ($ serverName, $ connectionInfo); if ($ conn === false) {echo "Не вдалося підключитися. \ n"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_close ($ conn); ?>
Пример Приклад
Наступний приклад показує, що ви можете випустити дату у вигляді строку, вказавши UTF-8 при випуску строків, навіть у тому випадку, якщо підключення було створено за допомогою "ReturnDatesAsStrings" => false. Наступний приклад показує, що ви можете отримати дати у вигляді рядків, вказавши UTF-8 під час отримання рядка, навіть коли з'єднання було зроблено з "ReturnDatesAsStrings" => false.
<? php $ serverName = "MyServer"; $ connectionInfo = array ("База даних" => "AdventureWorks", "ReturnDatesAsStrings" => false); $ conn = sqlsrv_connect ($ serverName, $ connectionInfo); if ($ conn === false) {echo "Не вдалося підключитися. \ n"; die (print_r (sqlsrv_errors (), true)); } $ tsql = "SELECT VersionDate OF AWBuildVersion"; $ stmt = sqlsrv_query ($ conn, $ tsql); if ($ stmt === false) {echo "Помилка підготовки / виконання оператора. \ n"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_fetch ($ stmt); // отримати дату як рядок $ date = sqlsrv_get_field ($ stmt, 0, SQLSRV_PHPTYPE_STRING ("UTF-8")); if ($ date === false) {die (print_r (sqlsrv_errors (), true)); } echo $ date; sqlsrv_close ($ conn); ?>
Пример Приклад
Наступний приклад показує, як видає дати у вигляді строку, вказавши UTF-8 та "ReturnDatesAsStrings" => вірно в строкі підключення. Наступний приклад показує, як отримати дати у вигляді рядків, вказавши UTF-8 та "ReturnDatesAsStrings" => true у рядку з'єднання.
<? php $ serverName = "MyServer"; $ connectionInfo = array ("База даних" => "AdventureWorks", 'ReturnDatesAsStrings' => true, "CharacterSet" => 'utf-8'); $ conn = sqlsrv_connect ($ serverName, $ connectionInfo); if ($ conn === false) {echo "Не вдалося підключитися. \ n"; die (print_r (sqlsrv_errors (), true)); } $ tsql = "SELECT VersionDate OF AWBuildVersion"; $ stmt = sqlsrv_query ($ conn, $ tsql); if ($ stmt === false) {echo "Помилка підготовки / виконання оператора. \ n"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_fetch ($ stmt); // отримати дату як рядок $ date = sqlsrv_get_field ($ stmt, 0); if ($ date === false) {die (print_r (sqlsrv_errors (), true)); } echo $ date; sqlsrv_close ($ conn); ?>
Пример Приклад
Наступний приклад показує, як видає дату у вигляді PHP. Наступний приклад показує, як отримати дату як тип PHP. 'ReturnDatesAsStrings' => помилкове включення по умолчанию. 'ReturnDatesAsStrings' => false за замовчуванням увімкнено.
<? php $ serverName = "MyServer"; $ connectionInfo = array ("База даних" => "AdventureWorks"); $ conn = sqlsrv_connect ($ serverName, $ connectionInfo); if ($ conn === false) {echo "Не вдалося підключитися. \ n"; die (print_r (sqlsrv_errors (), true)); } $ tsql = "SELECT VersionDate OF AWBuildVersion"; $ stmt = sqlsrv_query ($ conn, $ tsql); if ($ stmt === false) {echo "Помилка підготовки / виконання оператора. \ n"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_fetch ($ stmt); // отримати дату як об’єкт DateTime, а потім перетворити на рядок за допомогою функції data_format PHP $ date = sqlsrv_get_field ($ stmt, 0); if ($ date === false) {die (print_r (sqlsrv_errors (), true)); } $ date_string = date_format ($ date, 'jS, F Y'); echo "Дата = $ date_string \ n"; sqlsrv_close ($ conn); ?>
Пример Приклад
Параметр Ретурдатесасстрінгс на рівні інструкцій переопределяет відповідний параметр з'єднання. Параметр ReturnDatesAsStrings на рівні оператора перекриває відповідний параметр з'єднання.
<? php $ serverName = 'MyServer'; $ connectionInfo = array ('База даних' => 'База даних MyDatabase', 'ReturnDatesAsStrings' => false); $ conn = sqlsrv_connect ($ serverName, $ connectionInfo); if ($ conn === false) {echo "Не вдалося підключитися. \ n"; die (print_r (sqlsrv_errors (), true)); } $ tableName = 'MyTable'; $ options = array ('ReturnDatesAsStrings' => вірно); $ query = "SELECT DateTimeCol FROM $ tableName"; $ stmt = sqlsrv_prepare ($ conn, $ query, array (), $ options); if ($ stmt === false) {echo "Помилка підготовки / виконання оператора. \ n"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_execute ($ stmt); // Очікуйте, що отримане значення буде рядком $ field = sqlsrv_get_field ($ stmt, 0); echo $ field. PHP_EOL; sqlsrv_close ($ conn); ?>
См. також: Див
Вилучення даних Отримання даних
Як вивести типи дат і часу у вигляді об’єктів дат і часів PHP з підтримкою PDO_SQLSRV Як: Отримати типи дати та часу як об’єкти часу PHP за допомогою PDO_SQLSRV
Lt;?N"; die (print_r (sqlsrv_errors (), true)); } sqlsrv_close ($ conn); ?
Lt;?
Lt;?
Lt;?
Lt;?
PHP_EOL; sqlsrv_close ($ conn); ?