No.2ベストアンサー
- 回答日時:
質問文にある変数、x, n, y を、それぞれ変数 $x, $n, $y として使用します。
また、$x, $y は、シリアル秒とします。
$w = (localtime($x))[6];
if ($n >= $w) {
$s = int(($n - $w) / 5) + 1;
$n += $s * 2;
}
$y = $x - $n * (60*60*24);
(多分)これで求まると思います。
■考え方
・n 営業日前、というのが、1回も土日をまたがなければ、$x から $n 日分のシリアル秒を引けばOKです。
・1回でも土日をまたぐのであれば、前週の金曜日まで(営業日で)戻り、そこから(週5日で)何週分あるかを求めます($s)。その週数に土日の日数(2)をかけた値を $n に足せば、土日を含めて何日前かが求まります。
No.1
- 回答日時:
演習問題のつもりで挑戦した初心者回答の失礼をご容赦ください。
実行未確認の「力ずく」ですが・・・
$theday = timelocal(0, 0, 0, dd, mm-1, yyyy); #日付 x のシリアル秒
$i = 0; #経過営業日を0からスタート
while ($i < $n) { #経過営業日が n に達したら抜ける
$theday = $theday - 24*60*60; #1日前のシリアル秒
$wday = (localtime($theday))[6]; #その曜日を求めて
if (($wday != 0) && ($wday != 6)) { #土日でなければ
++$i;} #経過営業日を加算して
} #戻る
$y = localtime($theday); #経過営業日数が n に達した日付を得る
この回答へのお礼
お礼日時:2002/03/20 02:36
早速ありがとうございます。
そうなんですよね。
ループの度にlocaltimeを呼び出すのがヤで最後の手段にとは思ってるんですが、案外他に手は無いのかも知れないですね。
日付の計算ってほんとややこしいですよね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 求人情報・採用情報 アルバイトの面接結果について。 4月の29日のお昼頃、接客販売のアルバイトの面接を受けました。 結果 1 2023/05/06 16:36
- 電子マネー・電子決済 ドットマネー交換について質問 ドットマネーの交換先にdポイントがあります 交換時間は3営業日(土日祝 1 2022/11/27 09:25
- 結婚式・披露宴 結婚式と二次会の開催時間、曜日 6 2022/09/24 09:50
- 労働相談 有給計算について 回答お願いします。 建設業経営です。休日は日曜のみ 従業員の有給計算について 雇い 2 2023/03/26 06:12
- 派遣社員・契約社員 派遣仕事開始までの期間。 5月9日月曜日、派遣会社の紹介された仕事の職場見学をしてきました。3人応募 2 2022/05/09 20:48
- 会社・職場 先週の金曜日に面接を受けて、週明けに連絡しますと言われたのに結果が来なかったので不採用の場合連絡はな 3 2023/06/16 17:33
- 病院・検査 病院の受付の人は結構患者のことを見ていますか? 例えば○○さんは木曜金曜は来るけど月曜火曜は来ない水 2 2023/02/16 17:46
- 面接・履歴書・職務経歴書 面接日案内の就活メールについて メールが昨日(金曜)夕方に来ていたことに気づかず、土曜の朝になりまし 2 2022/10/29 04:42
- その他(ネットショッピング・通販・ECサイト) ご注文確認後、3営業日以内に発送致します。と言うことは3日以内に注文したのが自宅に届くということです 7 2023/03/23 18:07
- 眼・耳鼻咽喉の病気 《注意⚠️》 目の写真がうつります。 ✄-------------------‐✄ 土曜日から目が少 1 2022/12/05 01:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
エクセルで毎月第2週日の水曜日...
-
[Excel] ある日の曜日が当月の"...
-
VBA。複数のChangeイベントをま...
-
6月の第2 第4火曜日は何日...
-
曜日を求めるプログラムはどう...
-
Consolidateメソッドの引数のSo...
-
Excel VBA 第〇△曜日の場合休日...
-
週2回のペースって だいたい何...
-
日本語問題 昨日は何曜日ですか...
-
一年の第何週目であるかを判断...
-
週休3日制で土日の他にもう一日...
-
Excelで第一〇曜日を求める方法...
-
カレンダープログラム、曜日の...
-
曜日と曜の使い分けがわかりま...
-
西暦・月からカレンダーを表示
-
毎○曜日って、使いますか?
-
簡素で美しく記述するには・・・・
-
曜日派?日付派??
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
よくある 『 第○(1・2・3・4・...
-
月の第一週とは
-
エクセルで毎月第2週日の水曜日...
-
週2回のペースって だいたい何...
-
毎○曜日って、使いますか?
-
[Excel] ある日の曜日が当月の"...
-
週休3日制で土日の他にもう一日...
-
VBA。複数のChangeイベントをま...
-
毎週同じ曜日にラブホに行くと...
-
Excelで第一〇曜日を求める方法...
-
ユーザー定義の(aaa)
-
6月の第2 第4火曜日は何日...
-
今週とは何曜日から何曜日まで...
-
日本語問題 昨日は何曜日ですか...
-
曜日と曜の使い分けがわかりま...
-
土曜日の26時って何曜日の何時...
-
曜日のなぞ
-
時計の曜日がいつのまにか違う
-
エクセル、条件付書式について...
-
指定曜日にMsgBox表示は可能で...
おすすめ情報