我有一个Joomla 3站点并使用此代码从数据库中提取数据
<?php
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select($db->quoteName('receive_date'));
$query->select($db->quoteName('total_amount'));
$query->select($db->quoteName('source'));
$query->from($db->quoteName('money'));
$db->setQuery($query);
$results = $db->loadObjectList();
?>
<table>
<?php
foreach ( $results as $result) {
echo "<tr>" . "<td>" . $result->receive_date . "</td>" . "<td>" . $result->total_amount . "руб." . "</td>" . "<td>" . $result->source . "</td>" . "</tr>";
}
?>
</table>
以“2013-09-30 17:49:00”格式向我返回receive_date日期。我可以删除时间,只有2013-09-30这个字段吗?
谢谢!
答案 0 :(得分:2)
这样做:
$oDate = new DateTime($result->receive_date);
echo $oDate->format('Y-m-d');
答案 1 :(得分:1)
你可以这样做...... OOP
方式..!
<?php
$date = DateTime::createFromFormat('Y-m-d H:i:s',$yourdate);
echo $mysqlformat=$date->format('Y-m-d');
?>
答案 2 :(得分:1)
使用Joomla提供的JFactory
类,您可以使用:
echo "<tr><td>" . JFactory::getDate($result->receive_date)->format('Y-m-d') ."</td></tr>";
除了这个答案之外,我想我会告诉您,您不需要在查询中使用3次select
次尝试,因此您可以更改此内容:
$query->select($db->quoteName('receive_date'));
$query->select($db->quoteName('total_amount'));
$query->select($db->quoteName('source'));
$query->from($db->quoteName('money'));
到此:
$query->select(array($db->quoteName('receive_date'), $db->quoteName('total_amount'), $db->quoteName('source')));
$query->from($db->quoteName('money'));
答案 3 :(得分:0)
我更喜欢使用以下内容:
echo date('Y-m-d', strtotime($result->receive_date));