javascript date format

JavaScript
<?php
  // To change the format of an existing date
  $old_date_format = "20/03/1999";
  $new_data_format = date("Y-m-d H:i:s", strtotime($old_date_format));%a - Abbreviated weekday name. (Sun, Mon, ...)
%A - Full weekday name. (Sunday, Monday, ...)
%w - Weekday as a decimal number. (0, 1, ..., 6)
%d - Day of the month as a zero-padded decimal. (01, 02, ..., 31)
%-d - Day of the month as a decimal number. (1, 2, ..., 30)
%b - Abbreviated month name. (Jan, Feb, ..., Dec)
%B - Full month name. (January, February, ...)
%m - Month as a zero-padded decimal number. (01, 02, ..., 12)
%-m - Month as a decimal number. (1, 2, ..., 12)
%y - Year without century as a zero-padded decimal number. (00, 01, ..., 99)
%-y - Year without century as a decimal number. (0, 1, ..., 99)
%Y - Year with century as a decimal number. (2013, 2019 etc.)
%H - Hour (24-hour clock) as a zero-padded decimal number. (00, 01, ..., 23)
%-H - Hour (24-hour clock) as a decimal number. (0, 1, ..., 23)
%I - Hour (12-hour clock) as a zero-padded decimal number. (01, 02, ..., 12)
%-I - Hour (12-hour clock) as a decimal number. (1, 2, ... 12)
%p - Locale’s AM or PM. (AM, PM)
%M - Minute as a zero-padded decimal number. (00, 01, ..., 59)
%-M - Minute as a decimal number. (0, 1, ..., 59)
%S - Second as a zero-padded decimal number. (00, 01, ..., 59)
%-S - Second as a decimal number. (0, 1, ..., 59)
%f - Microsecond as a decimal number, zero-padded on the left.  (000000 - 999999)
%z - UTC offset in the form +HHMM or -HHMM.  
%Z - Time zone name. 
%j - Day of the year as a zero-padded decimal number. (001, 002, ..., 366)
%-j - Day of the year as a decimal number. (1, 2, ..., 366)
%U - Week number of the year (Sunday as the first day of the week). All days in a new year preceding the first Sunday are considered to be in week 0. (00, 01, ..., 53)
%W - Week number of the year (Monday as the first day of the week). All days in a new year preceding the first Monday are considered to be in week 0. (00, 01, ..., 53)
%c - Locale’s appropriate date and time representation. (Mon Sep 30 07:06:05 2013)
%x - Locale’s appropriate date representation. (09/30/13)
%X - Locale’s appropriate time representation. (07:06:05)
%% - A literal '%' character. (%)const event = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));

const options = {  year: 'numeric', month: 'short', day: 'numeric' };

console.log(event.toLocaleDateString('de-DE', options));
// expected output: Donnerstag, 20. Dezember 2012

console.log(event.toLocaleDateString('en-US', options));
// US format 


// In case you only want the month
console.log(event.toLocaleDateString(undefined, { month: 'short'}));
console.log(event.toLocaleDateString(undefined, { month: 'long'}));function formatDate(date) {
    var hours = date.getHours();
    var minutes = date.getMinutes();
    var ampm = hours >= 12 ? "PM" : "AM";
    hours = hours % 12;
    hours = hours ? hours : 12; // the hour "0" should be "12"
    minutes = minutes < 10 ? "0" + minutes : minutes;
    var strTime = hours + ":" + minutes + " " + ampm;
    return date.getDate() + "/" + new Intl.DateTimeFormat('en', { month: 'short' }).format(date) + "/" + date.getFullYear() + " " + strTime;
}

var d = new Date();
var e = formatDate(d);

console.log(e); // example output: 11/Feb/2021 1:23 PMconst d = new Date('2010-08-05')
const ye = new Intl.DateTimeFormat('en', { year: 'numeric' }).format(d)
const mo = new Intl.DateTimeFormat('en', { month: 'short' }).format(d)
const da = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(d)

console.log(`${da}-${mo}-${ye}`)Modern JavaScript date utility library https://date-fns.org/
date-fns provides the most comprehensive, yet simple and consistent toolset for manipulating JavaScript dates in a browser & Node.js.
Source

Also in JavaScript: