少し前にこの奇妙な問題が発生しましたが、まだ解決策を見つけることができませんでした。私のアプリケーションでは、サーバー上のユーザーのアクティビティに関する情報を保持しています。また、PHP のgetdate()関数を使用してアクティビティの日付を保持しています。問い合わせがあった場合、私はこの情報を電話に送り返し、より人間が読める形式で日付を表現しようとします。
例えば、
//This is the part that runs on the server
$timeOfAct = getdate();
//$timeOfAct = 1339637005. I guess this is the date in milliseconds
//INSERT $timeOfAct to database
JSON を使用して、この情報をアプリケーションに送り返します。
//st="1339637005"
SimpleDateFormat ft = new SimpleDateFormat("MM/dd/yyyy");
Date resultdate = new Date(Long.parseLong(st));
st=ft.format(resultdate);
st は常に 01/16/1970 になります。
私が理解している限り、JAVA の日付 0 は PHP の 0 と等しくありません。
変換を成功させるための提案はありますか?
更新: getdate()によって返される配列の 0 番目の要素を使用していたことを忘れていました。これは、 time()関数によって返されるものと同じです。
//例 INSERT $timeOfAct[0]