0

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>

receive_date の日付を「2013-09-30 17:49:00」形式で返します。時間を削除して、このフィールドに 2013-09-30 のみを指定できますか?

ありがとう!

4

4 に答える 4

2

これを行うだけです:

$oDate = new DateTime($result->receive_date);
echo $oDate->format('Y-m-d');
于 2013-11-07T14:11:53.600 に答える
1

あなたはこのようにすることができます.OOP方法..!

<?php
$date = DateTime::createFromFormat('Y-m-d H:i:s',$yourdate); 
echo $mysqlformat=$date->format('Y-m-d');
?>
于 2013-11-07T14:13:35.720 に答える
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'));
于 2013-11-07T14:35:51.610 に答える
0

私は以下を使用することを好みます:

echo date('Y-m-d', strtotime($result->receive_date));
于 2013-11-07T14:58:38.657 に答える