ホームページ  >  記事  >  バックエンド開発  >  指定された日付から数日後の日付を実装する方法_PHP チュートリアル

指定された日付から数日後の日付を実装する方法_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:03:39814ブラウズ

ここ数日、多くの人が突然この質問をしました。つまり、VB の DateAdd 関数を PHP で実装する方法です (笑)。これは公正な質問です。
元々、この問題は Doufu が Huawei への就職に応募した際の試験問題でしたが、当時は C++ で実装されていました。このような大手企業がこのような小児科医を受験させるとは予想していませんでした:) その後、私は過去 2 日間、http://www.chinaspx.com のネチズンに行かなかったのですが、「幸運でした」。 , この関数をPHPで書き直しました。
この関数は非常に単純で、指定した時刻に 1 日を加算して、新しく生成された日付を取得するだけです。
最初にこの関数を見てみましょう。まず、関数 CheckRun($year){
if($year%4==0 && () について事前に話しておく必要があります。 $year%100!=0 | $year%400==0) )
return true;
else
return false;
}
次のプログラムでこの関数を使用します
function DateAdd($date){
$ Parts =explode(' ', $date);
$date = $parts[0];
$time = $parts[1];
$ymd =explode('-', $date);
$hms = 爆発(':', $ time);
$year = $ymd[0];
$month = $ymd[1];
$day = $ymd[2];
$hour = $hms[0];
$分 = $hms[ 1];
$秒 = $hms[2];
$day=$day+1; //くだらない話はやめて、まず日付に 1 を追加してください
if($month=='1' || $month== '3' || $month=='7' || $month=='10' || ='12')
if($day==32)
{
$day='1';
$month++;
}
if($month=='4' || $month=='6' | | $month==' 9' || $month=='11')
if($day==31)
{
$day='1';
}
if($month== '2')
if (CheckRun($year))
{
//うるう年の 2 月は 29 日あります
if($day==30)
{
$day=1;
$month++;
}
}
else
{
// うるう年ではありません
if($day==29)
{
$day=1;
$month++;
}
}
if($month==13)
{
$month=1;
$year++;
}
return $year . "-" . $month . "-" . $day;
}
echo DateAdd("1999-12-31 11 :11:11");
echo DateAdd ("2000-2-29 11:11:11");
日数の追加をテストしたい場合は、ループを追加するだけです。誰もが専門家だと思いますが、これは機能はとてもシンプルです:)




http://www.bkjia.com/PHPjc/316189.html

www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/316189.html技術記事ここ数日、多くの人が突然この質問をしました。つまり、VB の DateAdd 関数を PHP で実装する方法です (笑)。これは公正な質問です。 もともとこの質問はHuaweiへの豆腐でした...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。