gpt4 book ai didi

php - php mysql 中的贸易结算日期

转载 作者:行者123 更新时间:2023-11-29 17:15:50 25 4
gpt4 key购买 nike

我正在尝试实现一种结算日期算法,以检查我所在地区的本地公共(public)假期,以使用 php/mysql 构建的小型交易应用程序。我将所有本地公共(public)假期日期整齐地存储在我的数据库中,然后使用变量输出。

应用程序应检查当前日期,然后添加三个工作日(减去周末),因为我国的结算周期遵循所有交易的 t+3 结算规则。这就要求,如果结算恰逢公共(public)假期或周末,应用程序应比较 db 表中的日期,然后设置新的工作日作为结算日期。

有人可以帮我解决我可能缺少的东西吗?请找到下面的代码:

<?php 
$rsd = date ( 'Ymd' , strtotime ( '3 weekdays' ) );
$phd = $row_public_holidays['date'];

if ($rsd == $phd) {
echo date ( 'Ymd' , strtotime ( '4 weekdays' ) );
} else {
echo date ( 'Ymd' , strtotime ( '3 weekdays' ) );
}
?>

最佳答案

如果您需要 date 的输出为 8 位数字,您可以将格式字符串从 Ymj 更新为 Ymd。将最后一个字符从 j 更改为 d 不再显示:

Day of the month without leading zeros

至:

Day of the month, 2 digits with leading zeros

根据日期 ( http://php.net/manual/en/function.date.php ) 的文档。

将其放在一起

strtotime 的调用执行计算并返回一个整数,表示自确定(或提供)时区 ( http://php.net/manual/en/function.strtotime.php ) 中纪元以来的秒数。对 date 的调用只是根据提供的格式 ( http://php.net/manual/en/function.date.php ) 将整数格式化为字符串。

所以:

$time = strtotime('4 weekdays');
var_dump($time);

$date1 = date('Ymj', $time);
var_dump($date1);

$date2 = date('Ymd', $time);
var_dump($date2);

输出:

int(1533600000)
string(7) "2018087"
string(8) "20180807"

在此示例中,对 date 的调用不会更改 $time 的值。

关于php - php mysql 中的贸易结算日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51633983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com