2012-04-21 8 views
0

データベースに日付と時刻を別々に設定しています。 startはYYYY-MM-DD形式、timeはHH:MM:SS形式です。開始日を変更して、読みやすい形式で日付を表示しようとしています。PHPの日付形式が間違った日付を出力しています

私はphpを使って出力しようとしましたが、私は "Wednesday、Dec 31 1969"を取得しています。 (正しい書式ですが、日付は私がデータベースに持っているものではありません)。

私はDATE_FORMAT('start','%W, %M %d %Y') AS startを使用しましたが、私の選択機能はstartで注文しており、正しい順序と値を指定することはできません。フォーマットは正しい。

私のPHPコードは、私は私が間違ってやっている可能性がわからない

$sql = "SELECT `title`, `time`, `start`, `showFeed` FROM calender WHERE length('column') > '0' and showFeed=1 ORDER BY `start` ASC LIMIT 0,4"; 

/* DATE_FORMAT(`start`,'%W, %M %d %Y') AS start */ 

    $result = $dbh->query($sql)->fetchAll(PDO::FETCH_ASSOC); 

echo "<div class=\"eventfeed\">"; 
echo "<ul>"; 

foreach ($result as $row){ 
$dt = $row['start']; 
$ts = $row['time']; 

$date = strtotime($dateout); 
$dateout = date('l, M j Y', $phpdate); 



    echo "<dl>"; 
    echo "<dt>". $row['title']. "</dt>"; 
    echo "<dd>". $dateout; 
    echo "</dl>"; 

} 

echo "</ul>"; 
echo "</div>"; 

$dbh = null; 

です。私はこれを前にやってきましたが、何らかの理由で日付を書式設定していて、今回は動きません。

答えて

1

このお試しください:私はそれだけでタイプミスだったのかはわからない、またはそれはあなたのコードだ場合、しかし

<?php 
$dt = $row['start'] . ' ' . $row['time']; 
echo date('l, M j Y', strtotime($dt)); 

を - それはセットの前に$dateoutを参照している、と設定されることはありません$phpdate、 。

+0

私はそれを気づいた、私はそれを修正しました。 –

関連する問題