1

PHPを比較したい:

$now = date('Y-d-m H:i:s');

mysqlCURRENT_DATE()die();

mysqlcurrent_dateが と同じかどうかを確認する必要があり$nowます。

しかし、私はそれを行う方法がわかりません。CURRENT_DATE()と比較できるように、おそらくフォーマットの変更も必要になるでしょう。$now = date('Y-d-m H:i:s');

これは可能ですか?

はいの場合、php コードはどのようになりますか?

4

2 に答える 2

3

MySQL ではCURDATE()、関数で数値または文字列が使用されているかどうかに応じて、'YYYY-MM-DD' 形式または 'YYYYMMDD' 形式で現在の日付が返されます。

CURRENT_DATECURRENT_DATE()は の同義語ですCURDATE()

SELECT CURDATE();

ここに画像の説明を入力

MySql の例 - curdate() 関数

$result = mysql_query("SELECT CURDATE()");
while($row=mysql_fetch_array($result))
{ 
echo $row['CURDATE()'] ;
}

MySql の例 - 数値形式の curdate() 関数

$result = mysql_query("SELECT CURDATE()+1");
while($row=mysql_fetch_array($result))
{

echo $row['CURDATE()+1'];

}

mysql_* 関数を使用した理由は、理解している mysql_* 関数の使用は推奨されない

于 2012-11-04T18:19:46.890 に答える
1

基本的に、strtotimeを使用して、MYSQLによって返された日付をUnixタイムスタンプに変換し、それを時間と比較できます。

$q = "SELECT CURRENT_DATE() date";
$res = mysql_query($q);
$row = mysql_fetch_assoc($res);
if(time() == strtotime($res['date'])) // dates are equal, proceded with your logic

または、必要に応じて、そのように少し奇妙に行うこともできます。

if (strtotime(date("Y-m-d H:i:s")) == strtotime($row['date']))

しかし、最初のバージョンはよりクリーンになります

于 2012-11-04T18:42:18.577 に答える