使用构造在类中格式化日期

时间:2017-10-19 18:42:33

标签: php class construct

我对下一个问题有一些问题。 我有一个函数来从SQL表中获取所有日期。我想将这些日期格式更改为dd / mm / YY样式。 我想我应该通过__construct函数来完成它,但我无法解决问题。

这是我当前的功能,它给出了SQL格式的所有日期,YY-mm-dd。

public function get_post($id = null) {
$q = 'SELECT id, date_published FROM posts';
if ($id) {
  $q.=' WHERE id = :id';
}
$stmt = $this->con->prepare($q);
if ($id) {
  $stmt->bindParam(':id', $id);
}
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_CLASS, 'post');
return $stmt;}

我尝试在__construct的同一个函数中包含一个函数,但我不知道如何格式化日期。 我尝试过:

this-> date_published = //新的格式化日期

$ date_published = //新的格式化日期

,但不起作用。

任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:1)

使用getter和setter(PHP magic methods):

  public function __get($property, $value) {
    if ($property === "date_published") {
      $this->$property = // new formatted value
    }

    return $this;
  }