【发布时间】:2021-07-02 02:18:49
【问题描述】:
我正在尝试在 lua 中生成一个随机乘数,因此每个新的一周都会选择一个新的乘数。
例如 第一周可能是:1000 * 1.2 下周可能是:1000 * 0.8
并且应该来自 math.random(0.8,1.2) 但我想将随机数保留一整周。
我已经能够找到一种在 php 中执行此操作的方法,但是当尝试在 lua 中格式化日期时,我找不到解决方法。
我需要 ISO-8601 周编号年份和周编号。
这个 php 代码正是这样做的:
<?php
mt_srand((int)date('oW')); //this week date('oW') returns 202114
$number = mt_rand(0.8, 1.2); //from the mt_srand above it will always return 1 on this specific week, even if the script is re-executed
$value = 1000 * $number;
echo $value; //current week returns 1000
?>
有没有聪明人可以破解这个?我觉得这是一个非常有趣的概念。 注意:我不想将它存储在数据库中,这就是这样做的原因。
【问题讨论】:
-
在 Lua 中,您可以获取年初的当前日期
os.date"*t".yday(今天返回96)。我希望你能在 php.ini 中得到相同的数字。只需将其除以 7。