2011-06-28 7 views
0
public function updateAuction($id) 
{ 
    $AuctionsTable = Doctrine_Core::getTable('auctions'); 

    $auction = $AuctionsTable->find($id); 

    $auction->ends_at += 10; 

    $auction->save(); 
} 

私はDoctrineを使ってデータベースからレコードを取得しています。DBから「日付」タイプを取得して秒を追加する

このレコードでは、日付の種類であるends_at列の秒数を増やす必要があります。

+=もちろん動作しませんでした。変数をends_atに10秒追加する最も簡単な方法は何ですか?そして、表示される可能性がある他のすべての迷惑を処理しました(59 + 10 = 69秒)。

多分私はmysqlのaddtime()機能を使うべきですか?しかし、それはDoctrineで実装されていますか? Doctrineでaddtime()について何も見つかりませんでした。

答えて

1
  1. DateTime objectにDBから値を変換するPHP
  2. バックDB
  3. に結果の値を入れ
  4. 秒を追加しDateTime::add functionを使用して、
+0

修正済み!どうもありがとうございました! ;)ところで、私は$ d-> format( 'Y-m-d H:i:s')を使用しなければならなかったので、また、文字列バージョンを取得するには、文字列値を$ auction-> ends_atに割り当てることができます。 – Tool

0

これを試してみてください。

$sec = new Zend_Date($auction->ends_at, Zend_Date::SECOND); 
$auction->ends_at = $sec->addSecond(10); 
$auction->save(); 
+0

Zend_Date行を追加すると、ファンクバグに「要素が見つかりません」というメッセージが表示されます。 – Tool

+0

私は最初の行を編集します!どうぞ! ;) – JellyBelly

+0

しかし、私はzendフレームワークを使用していません。私はSymfonyを使用しています。そのクラスはありません。 – Tool

関連する問題