Php ile mysql tarih alanını Kırpma veya dönüştürme

2 Cevap php

Ben php ile bir tablo mysql bir datetime alanın içeriğini görüntüleyen ve sadece tarihini göstermek istiyorum duyuyorum. Bu dönüştürmek ya da yapmak için bir yolu var mı, yoksa gerçek bir dize editied veya kesilmiş olmalıdır?

2 Cevap

Using strtotime...

Basit bir şekilde bu gibi:

$date="2009-01-27 14:30:22";
echo strftime("%d %m %Y", strtotime($date));

yani strtotime, sonra da strftime ile yeniden biçimlendirmek bir zaman değerine içine mysql tarih çevirin.

Ancak unix timestamp ile temsil edilebilir tarihler için bu sadece işleri - 1 Ocak 1970 öncesi veya sonrası hiçbir tarihler 2038

Using PEAR's Date class...

PEAR Date classes tarihsel tarihleri ​​ile daha iyi başa gereken daha kapsamlı bir yaklaşım için:

$date=new void Date("2009-01-27 14:30:22");
echo $date->format("%d %m %Y");

...or use your DB

Alternatif olarak, bu DATE_FORMAT ile sizin için db biçimi var

SELECT col1,col2,DATE_FORMAT(col2, '%W %M %Y') as col2readable FROM mytable;

PHP ile yapabileceğini, ancak ek bagaj ihtiyacınız yoksa, sizin sorguda bunu yapıyor düşünün ve sadece ihtiyacınız dönmek olabilir. Bu örnek kullanır DATE_FORMAT():

"SELECT col1, col2, DATE_FORMAT(dateCol, '%d-%m-%Y') as 'newDate' 
 FROM tablename"