文字列の日付を Java の日付に変換して Java に渡す PHP 関数を作成しようとしています。アプリケーションに java.util.Date ではなく java.sql.Date を使用する必要があります。しかし、この単純な関数では奇妙な結果が得られます。
function makeStrJavaDate($date){
$date = date_parse($date);
$date = new Java("java.sql.Date",$date['year'], $date['month']-1, $date['day']);
return $date;
}
java が返した日付の年が間違っています: php (2011 年 7 月 1 日)、java (3911 年 7 月 1 日)。
何が間違っているかについての指針はありますか?
参考までに、phpは正しく解析しています:
Array
(
[year] => 2011
[month] => 7
[day] => 1
[hour] =>
[minute] =>
[second] =>
[fraction] =>
[warning_count] => 0
[warnings] => Array
(
)
[error_count] => 0
[errors] => Array
(
)
[is_localtime] =>
)