0

phpに2つの変数があると仮定します。

$year
$month

次に、別の変数を作成します。

$date

どれの:

$date=$year-$month-25

したがって、2012年が$ yearで、7が$ monthの場合、$dateは2012-07-25になります。

実際、MySQLのある日付と比較します。$yearと$monthはユーザーが入力します。

誰かが解決策を持っていますか?$ dateを作成する方法、またはmysqlの日付と比較できる限りの解決策。前に感謝します。^^

4

7 に答える 7

2

これにより、UNIXタイムスタンプを作成できます。

$myDate = mktime(0, 0, 0, $month, 25, $year);

これは、次の方法であらゆる種類の優れた形式にフォーマットできるため、非常に便利です。

echo date("Y-m-d", $myDate);
// Prints something like: 2012-07-25

また

echo date("l", $myDate);
// Prints something like: Monday

また

date('l jS \of F Y h:i:s A', $myDate);
// Prints something like: Monday 8th of August 2005 03:12:46 PM
于 2012-07-31T09:28:33.497 に答える
1

$ dateを作成する方法、またはmysqlの日付と比較できる限りの解決策

ここで重要なのは、を使用しstrtotimeて作成および比較することです。

MySQLの日付は、strototimeを使用して整数に変換できます。

strtotime($mysql_date);

time()次に、2つを取得して比較できます。

time()<>strtotime($mysql_date) // then the two dates are not equal.
于 2012-07-31T09:27:25.743 に答える
1

mktime関数を使用できます

$date = date('Y-m-d',mktime(0,0,0,$month,25,$year));
于 2012-07-31T09:27:55.663 に答える
1

さて、私はmktimeを使用して日付のタイムスタンプ(http://php.net/manual/de/function.mktime.php)を取得し、mysqlでコマンドunix_timestamp(date(yourfield))を使用してそれらを比較します。(unix_timestampを含むdate()は、純粋な日付値ではなく、日時値を保存する場合にのみ必要です)

于 2012-07-31T09:28:15.803 に答える
1

あなたは次のようにすることができます

$complete_date = $year."-".$month."-25";

それはあなたに2012-7-25を与えます

于 2012-07-31T09:24:15.587 に答える
1

PHP文字列を連結するための「 phpマニュアル」をお読みください。

そうではありません

$date = $year-$month-25;

それは

$date = $year . '-' . $month . '- 25';

また

$date = $year . "-" . $month . "- 25";

しかし、単純な引用符はphp文字列に対してより最適化されています。

于 2012-07-31T09:26:19.643 に答える
1

mysqlの日付は通常、Y-m-dデフォルトでこの形式であるため、次を使用できます。

$thedate = date('Y-m-d',mktime(0,0,0,$month,25,$year));
ここで$month、および$yearはユーザー入力に基づいています。もちろん、選択/リストを使用して、ユーザーが希望する形式で入力できるようにする必要があります。

于 2012-07-31T09:34:46.737 に答える