Использование библиотеки для даты преобразования

Я использую библиотеку для преобразования Gregorian date в дату моей страны.
Следующий код является примером моей кодировки:

Include_once("jdf.php");
$test_date = "2018-09-09 06:00:00";
$changed_date = jdate('Y-m-d H:i:s', strtotime($test_date));
echo $changed_date;

Но когда я использую это для строк базы данных, просто Y-m-d становится convert. Следующий код - это мой сценарий:

try {
    $stmt = $conn->prepare("SELECT date as table_date FROM api_table;");
    $stmt->execute();
    Include("jdf.php");
        while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
            extract($row);
            $convert_date = jdate("Y/m/d H:i:s", strtotime($table_date));
            echo $convert_date;
        }
} catch (PDOException $e) {
        echo "Error: " . $e->getMessage();
}

Вы можете мне помочь, ребята ??

Какой результат вы ожидаете получить и какой результат вы получите на самом деле?

FabianGillenius 01.11.2018 08:16

Кроме того, какой тип данных представляет собой столбец «дата» в api_table?

FabianGillenius 01.11.2018 08:17

Тип даты @FabianGillenius - datatime, и вывод просто преобразует H: i: s первой строки и преобразует все строки Y / m / d

Pardis Ak 01.11.2018 08:21

Идентична ли дата, хранящаяся в базе данных, переменной $ test_date? Если вы повторите оба strtotime (), получите ли вы тот же результат?

FabianGillenius 01.11.2018 08:26

@FabianGillenius Это сэкономленное время в базе данных: 2018-09-06 08: 13: 24.700412, и если я удалю strtotime(), я получу эту ошибку: A non well formed numeric value encountered

Pardis Ak 01.11.2018 08:30

@FabianGillenius я работаю для первой строки, но не для других строк

Pardis Ak 01.11.2018 08:30

@FabianGillenius Я преобразовал Y-m-d для всех строк

Pardis Ak 01.11.2018 08:31

Во втором примере вы используете формат Y / m / d вместо Y-m-d. Это не должно иметь значения, но я не знаком с используемой вами библиотекой. Что произойдет, если вы измените второй пример на Y-m-d?

FabianGillenius 01.11.2018 08:40

@FabianGillenius Неважно. мой друг, моя проблема связана с H: i: s no Y-m-d, Y-m-d преобразование выполнено успешно, но мой скрипт просто преобразует H: i: s для первой записи.

Pardis Ak 01.11.2018 08:45

Я понимаю это, но иногда ошибка возникает из-за части кода, работающего иначе. Я не вижу ошибок в вашем коде. Не могли бы вы поделиться ссылкой на библиотеку, которую вы используете?

FabianGillenius 01.11.2018 08:53

@FabianGillenius jdf.scr.ir/download/jdf_dl.php

Pardis Ak 01.11.2018 08:57

Единственное отличие, которое я вижу, помимо формата, - это точность. Не могли бы вы попробовать следующее, чтобы исключить странные поведенческие ошибки? После извлечения ($ row); сделайте это: $ new_date = explode ('.', $ table_date); $ convert_date = jdate ("Г / м / д H: i: s", strtotime ($ new_date [0]));

FabianGillenius 01.11.2018 13:25

@FabianGillenius Не работает.

Pardis Ak 03.11.2018 06:24
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
13
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Просто установите часовой пояс:

date_default_timezone_set("Asia/Tehran");

Другие вопросы по теме