Converteer DateTime naar String PHP

Ik heb al veel sites onderzocht over hoe ik een PHP DateTime-object naar String kan converteren. Ik zie altijd “String to DateTime” en niet “DateTime to String”

PHP DateTime kan worden herhaald, maar ik wil mijn DateTime verwerken met PHP-tekenreeksfuncties.

Mijn vraag is hoe ik van PHP dateTime Object een string kan maken die begint met dit soort code:

$dts = new DateTime(); //this returns the current date time
echo strlen($dts);

Antwoord 1, autoriteit 100%

U kunt de formatmethode van de DateTimeklasse:

$date = new DateTime('2000-01-01');
$result = $date->format('Y-m-d H:i:s');

Als formatom de een of andere reden mislukt, wordt FALSEgeretourneerd. In sommige toepassingen kan het zinvol zijn om het falende geval af te handelen:

if ($result) {
  echo $result;
} else { // format failed
  echo "Unknown Time";
}

Antwoord 2, autoriteit 4%

echo date_format($date,"Y/m/d H:i:s");

Antwoord 3, autoriteit 4%

De eenvoudigste manier die ik heb gevonden is:

$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;

Ik hoop dat het helpt.


Antwoord 4, autoriteit 3%

Er zijn enkele voorgedefinieerde formaten in date_d.phpom te gebruiken met formatzoals:

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");

Gebruik als volgt:

$date = new \DateTime();
$string = $date->format(DATE_RFC2822);

Antwoord 5

Korter met lijst. En je kunt doen wat je wilt met elke datumcomponent.

list($day,$month,$year,$hour,$min,$sec) = explode("/",date('d/m/Y/h/i/s'));
echo $month.'/'.$day.'/'.$year.' '.$hour.':'.$min.':'.$sec;

Antwoord 6

Het heeft voor mij gewerkt

$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);

Other episodes