PHP: нужна функциональность json_encode () 5.4 в 5.2.5 - PullRequest
0 голосов
/ 03 августа 2020

Короче говоря, клиентский хостинг использует php 5.2.5, и мне отчаянно нужно использовать интерфейс jsonSerialize, чтобы изменить формат даты и времени json_encode () на dd / mm / yyyy hh: mm: ss, когда параметр ReturnDatesAsStrings указан в соединение ms sql. Интерфейс был в версии 5.4. Кто-нибудь знает какой-нибудь эквивалент для этой цели? Обратите внимание, что я не могу использовать date_format для указанного поля c, потому что набор данных изменяется во время выполнения, и я не знаю, сколько полей datetime там будет. Укажите на это, пожалуйста.

1 Ответ

0 голосов
/ 03 августа 2020

ну, я сам нашел обходной путь, он довольно уродливый, но сейчас он работает, в основном я нахожу и перезаписываю любое datetime внутри ассоциативного массива, прежде чем вызывать json_encode

    foreach( sqlsrv_field_metadata( $sth ) as $metaData ) {
      $type = $metaData["Type"];
      $name = $metaData["Name"] ;
      if ($type == 93) {
         $strdate =  strtotime($rows[0][$name]);
         $date = date("d/m/Y H:i:s.u", $strdate);
         $rows[0][$name]=$date;
      }
    }         
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...