PHP返回JSON编码字符串之前更改字段的日期格式

php jquery html5

83 观看

2回复

18 作者的声誉

我有一个php代码,可在其中提取表名“ account”中的所有字段(其中约50个)。该代码按预期工作。但是,我需要将字段“ register_date”的日期格式从“ Ymd H:i:s”更改为“ mdY”,然后返回JSON编码的字符串。我可以使用下面的代码,但是因为我有50个字段,所以它变得乏味。

$json_response = array();
$json_response['registered_date'] = date("m-d-Y", strtotime($result['registered_date']));
$json_response['contract_number'] = $result['contract_number'];

有办法方便地做到这一点吗?

$order = htmlspecialchars(trim($_POST['order_list']), ENT_QUOTES);
$id = htmlspecialchars(trim($_POST['id_list']), ENT_QUOTES);
$sql = $DB_CON_C->prepare("SELECT * FROM account WHERE contract_number=:order AND id=:id");

$sql->bindValue(':order', $order, PDO::PARAM_STR);
$sql->bindValue(':id', $id, PDO::PARAM_STR);
$sql->execute();
$result = $sql->fetch(PDO::FETCH_ASSOC);

$json_response = array();
$json_response['registered_date'] = date("m-d-Y", strtotime($result['registered_date']));
$json_response['contract_number'] = $result['contract_number'];

die(json_encode($json_response));
作者: ninjachuku 的来源 发布者: 2017 年 9 月 15 日

回应 2


0

1 作者的声誉

您可以格式化从mysql输出的日期,但我实际上并不这样做,这就是我在php中所做的事情。

  1. 从查询中创建一个新的DateTime对象
  2. 使用format()方法获取所需的格式,然后用新的字符串替换查询结果中的值

    $ date_string =(新的\ DateTime($ result-> register_date))-> format('md-Y');

    $ result-> register_date = $ date_string;

    返回$ result;

作者: Prinzhillary 发布者: 2017 年 9 月 15 日

0

18 作者的声誉

决定

我想到了。只需更改PDO语句:

$sql = $DB_CON_C->prepare("SELECT * FROM account WHERE contract_number=:order AND id=:id");

$sql = $DB_CON_C->prepare("SELECT *, date_format(register_date,'%m-%d-%Y') register_date FROM account WHERE contract_number=:order AND id=:id")
作者: ninjachuku 发布者: 2017 年 9 月 15 日
32x32