#php #mysql
Вопрос:
Я пытаюсь экспортировать все данные из MySQL в CSV с помощью php, все работает нормально, но дата, которая возвращается, кажется, в UTC. Я пытался скрыться в IST, но это не работает.
if(isset($_POST['from_date']) amp;amp; isset($_POST['to_date'])){
$query = "SELECT * FROM `".$tblname."` WHERE (DATE(convert_tz(FROM_UNIXTIME(date_field),' 00:00',' 05:30')) BETWEEN '".$from_date."' and '".$to_date."') ORDER BY id ASC";
}
вот временная метка даты
1632019768
и его возвращение 18-09-2021
Ответ №1:
Вы всегда можете выполнить преобразование с помощью php по значению:
<?php
$timeStamp = "1632019768";
$date = gmdate("Y-m-d H:i:s", $timeStamp);
echo "Timestamp to utc: " . $date . "<br><br>";
echo "Add 5 hours and 30 mins: " . date("Y-d-m H:i:s", strtotime($date.' 5 hours 30 min'));
который вернется :
Timestamp to utc: 2021-09-19 02:49:28
Add 5 hours and 30 mins: 2021-19-09 08:19:28
Комментарии:
1. Эй! спасибо за ответ. можно ли преобразовать это при передаче запроса mysql? и не могли бы вы, пожалуйста, сказать мне, как я могу использовать эту функцию «strtotime» в $date = дата(«Y-m-d»,$строка[‘поле даты’]); должен ли я использовать ее в поле даты или сначала сохранить ее в переменной, а затем преобразовать ее?
2. Эй, Приятель! спасибо за вашу помощь, я понял это, реализовав то, что вы предложили .
3. $row[‘поле даты’] — это значение метки времени $в моем примере — вы включаете его в стандартную дату utc с датой gmdate, как в примере, и затем используете strtotime для преобразования его в то, что вам нужно.
4. @HemantGiri Вы можете отметить полезное, чем! 🙂 рад помочь!