php - 拉拉维尔 : Function Always Insert One Number To DB In LOOP

标签 php mysql laravel orm while-loop

我想创建一些基于毫秒的随机代码。 当我使用“var_dump”时,它显示我的函数工作正常,并且创建了太多的 $result 数字。但是当我使用 ORM INSERT 语句将它们保存到我的数据库中时,它总是在数据库中保存:2147483648,而且似乎它不依赖于我的 $结果!!!!! 这是我的代码:

    public function Timer($Number)
    {
$i=0;
        while ($i<$Number)
        {
            $microtime = microtime(true);
            $milliseconds = sprintf("%02d", ($microtime - floor($microtime)) * 96 * 62 * 23 * 43);
            $result=date('His'. $milliseconds, $microtime)."";
            $result=substr($result,1,11);
            DB::table('form')->insert([
                'Number' => $result,
                'IsValid' => false
            ]);
$i++;
        }
    }

最佳答案

2147483647maximum number for signed INT 。因此,尝试使用无符号的BIGINTVARCHAR来存储值。

或者您可以使用另一种方式来构建随机代码,例如 str_random()或类似的东西。

关于php - 拉拉维尔 : Function Always Insert One Number To DB In LOOP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40363761/

相关文章:

php - Laravel 7 在作业类中动态设置日志路径

用于计算返回 null 的 (MySql) 查询循环内各行的 PHP 函数

php - 无法在我的 SQL 语句中获取空格

java - 每当我运行 "apt-get install php5-gd php-mysql"时,它都会在 Ubuntu 14.04 上显示 "Unable to locate package php-mysql"

mysql - 列出mysql中每一项的最后一条记录

php - 两个外键,如何用 laravel eloquent 映射

php - 获取所有行并在列上应用总和

MySQL:使用 NOT EXISTS 子查询优化查询

PHP 未检测文件输入值

php - 是否可以反向查表快速获取最新数据?