PHP DateTimeオブジェクトをStringに変換する方法については、既に多くのサイトを調査しています。 「DateTime to String」ではなく、常に「String to DateTime」が表示されます。
PHPのDateTimeはエコーすることができますが、PHP文字列関数を使ってDateTimeを処理したいのですが。
私の質問はPHP dateTime Objectをどのようにしてこの種のコードから始まる文字列にすることができるかです。
$dts = new DateTime(); //this returns the current date time
echo strlen($dts);
format
クラスの DateTime
メソッドを使用できます。
$date = new DateTime('2000-01-01');
$result = $date->format('Y-m-d H:i:s');
何らかの理由でformat
が失敗した場合、FALSE
が返されます。一部のアプリケーションでは、失敗したケースを処理するのが理にかなっているかもしれません。
if ($result) {
echo $result;
} else { // format failed
echo "Unknown Time";
}
私が見つけた最も簡単な方法は:
$date = new DateTime(); //this returns the current date time
$result = $date->format('Y-m-d-H-i-s');
echo $result . "<br>";
$krr = explode('-', $result);
$result = implode("", $krr);
echo $result;
助けになれば幸いです。
echo date_format($date,"Y/m/d H:i:s");
format
で使用するためのdate_d.php
にはいくつかの定義済みフォーマットがあります。
define ('DATE_ATOM', "Y-m-d\TH:i:sP");
define ('DATE_COOKIE', "l, d-M-y H:i:s T");
define ('DATE_ISO8601', "Y-m-d\TH:i:sO");
define ('DATE_RFC822', "D, d M y H:i:s O");
define ('DATE_RFC850', "l, d-M-y H:i:s T");
define ('DATE_RFC1036', "D, d M y H:i:s O");
define ('DATE_RFC1123', "D, d M Y H:i:s O");
define ('DATE_RFC2822', "D, d M Y H:i:s O");
define ('DATE_RFC3339', "Y-m-d\TH:i:sP");
define ('DATE_RSS', "D, d M Y H:i:s O");
define ('DATE_W3C', "Y-m-d\TH:i:sP");
このように使用してください:
$date = new \DateTime();
$string = $date->format(DATE_RFC2822);
リストを使うより短い方法。そして、あなたはそれぞれの日付コンポーネントであなたが望むことをすることができます。
list($day,$month,$year,$hour,$min,$sec) = explode("/",date('d/m/Y/h/i/s'));
echo $month.'/'.$day.'/'.$year.' '.$hour.':'.$min.':'.$sec;
それは私のために働いた
$start_time = date_create_from_format('Y-m-d H:i:s', $start_time);
$current_date = new DateTime();
$diff = $start_time->diff($current_date);
$aa = (string)$diff->format('%R%a');
echo gettype($aa);