2012-04-06 24 views
3

私は、DateTimeオブジェクトの配列を持っており、それらを関数呼び出しの文字列として使用する必要があります。私は$string_datetime = (string)$myDateTimeObject;のようにキャストしようとしましたが、うまくいきません。ほとんどの人が文字列をDateTimeに変換する方法を尋ねているので、検索は実りありません。DateTimeを文字列に変換する方法

マイコード:

$start_date = new DateTime(); 
$end_date = new DateTime(); 
$end_date = $end_date->modify('+1 day'); 

// Add time range to request 
$request['time_range'] = Array ('start' => $start_date, 
           'end' => $end_date); 

私はこのエラーが発生した(これはAPI呼び出しの)文字列を期待する関数を呼び出す:

Catchable fatal error: Object of class DateTime could not be converted to string

列を抽出/変換する正しい方法は何ですかDateTimeオブジェクトから?

答えて

6

DateTime::format()を使用してください。

+0

Damn。私はそれを逃したとは信じられない!ありがとう。 –

+1

これは間違った方法ではありませんが、RTFD:http://www.php.net/manual/en/book.datetime.php –

+2

「DateTime」を暗黙的に文字列にキャストすることはできません。個人的には、それを拡張するラッパークラスを使い、 'DateTime :: format()'を使う '__toString()'メソッドを追加します。それでもネイティブ機能、IMOでなければなりません。 – FtDRbwLXw6

関連する問題