我需要使用PHP创建具有当前日期和一些输入值的10位数随机数。我在下面解释我的代码。
$current_date=date('Y-m-d');//2018-04-30
$user_input=1;
以上数据是用户输入,我的预期输出应如下所示。
$output=1804300001
随机数生成格式应与此yymmdd
4 digit number including user input
类似。假设user_input = 1那么它应该是0001
和user_input=12
那么它应该是0012
。
答案 0 :(得分:1)
像这样的东西
$date = new DateTime();
$input = 1;
$output = date_format($date,"ymd").sprintf('%04u', $input);
答案 1 :(得分:1)
<textField>
<reportElement x="520" y="1" width="40" height="48" uuid="5df12c06-9c58-4b26-99c1-02b1d8e86456"/>
<box>
<topPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
<leftPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
<bottomPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
<rightPen lineWidth="0.0" lineStyle="Solid" lineColor="#000000"/>
</box>
<textElement textAlignment="Center" verticalAlignment="Middle"/>
<textFieldExpression><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
答案 2 :(得分:1)
这里有一些代码给你......有很多解决方案。
$user = 12;
$date = date("ymd", $time());
echo $datum .sprintf("%04u",$user);
祝你好运
答案 3 :(得分:0)
如果使用您的代码($current_date = date('Y-m-d');
$user_input = 1;
$result = substr(str_replace('-', '', $current_date), 2); // Replace "-" with nothing plus remove first 2 digits
$result .= str_pad($user_input, 4, '0', STR_PAD_LEFT); // Fill in with "0" to the left
):
{{1}}
可能不是最漂亮的代码,但它工作正常。