0

mysqlのdobから日または月のみを表示するのに問題があります。私はこれらのステップを実行しました、

最初にデータベースにテーブルを追加しました。

ALTER TABLE `dle_users` ADD `dob` DATE NOT NULL;

次に、このコードをphpファイルに追加しました。

$dob = $db->super_query( "SELECT dob FROM dle_users");
$tpl->set("{dob}", $dob);

プロファイルページで、次のような正しい結果が得られました:1372-07-08 (ペルシャの日付)

問題は、完全な日付ではなく、日または月のみを表示する必要があることです

私はこの方法を試しました:

$dob = date("m", $row['dob']);    
$tpl->set("{dob}", $dob);

しかし、それは機能しません!どうすればこれを修正できますか?

ありがとう :)

4

2 に答える 2

2

使用しているフレームワークまたはCMSはわかりませんが、コアphpのユーザーはこのように試す必要があります

$dob = date("m", strtotime($row['dob']));    
$tpl->set("{dob}", $dob);

日数を数えるには、このリンクをチェックしてください

$date1 = "2007-03-24";
$date2 = "2009-06-26";

$diff = abs(strtotime($date2) - strtotime($date1));

$years = floor($diff / (365*60*60*24));
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));

printf("%d days\n", $days);
于 2012-10-13T03:55:48.307 に答える
1

データベースに必要なのが月である場合は、Month関数を使用して月を取得します。同様に、別の日付までの日数を取得します。

DBは、単純な計算ではフロントエンドと同じように機能します。ほとんどの場合、DBエンドでそれを行わない理由はありません。

于 2012-10-13T03:56:56.607 に答える