2017-06-09 5 views
2

私はPHPでdatetimeを使用して数学の問題を解決しようとしています。 作成している文字列が動的な問題です。私は静的な文字列として追加する場合、それは正常に実行されますが、私は文字列を動的にする場合は失敗します。コード例を示します。DateInterval string問題

$now = new DateTime(); 
$datetime_interval = 'P' . $filledOrder->hours . 'H'; // hours comes from an object 
$now->add(new DateInterval($datetime_interval)); 

私はDateIntervalに静的な文字列を追加する場合は、enter code here

$now->add(new DateInterval('P10H')); 

正常に動作している任意の助けいただければ幸いです。

+0

エラーが表示されますか? '$ filledOrder-> hours'がnullまたは空であれば、sthになります。悪いフォーマットエラーのように。また、あなたの(静的な)書式が間違っていることにも注意してください:間隔指定から: "期間に時間要素が含まれている場合、その部分に文字Tが先行します"。だから、それは 'PT'でなければなりません。 $時間。 'H' – macghriogair

+0

いいえ私はエラーを取得していないと私はデバッグ時に、そのオブジェクトのプロパティは値 –

+0

あなたが正しいとmacghriogairを参照してください。それは仕事が今とても感謝しています。これで1時間を過ごしました。もう一度ありがとう –

答えて

1

このように、フルストリングをフォーマットとして入力することを検討する必要があります。

p0y0dt10h0m

+0

このソリューションを試しましたか?任意の部分を変数に置き換えてください。 –

関連する問題