我有一个表,其中包含几个具有不同数据类型的字段。我的任务是创建一个用随机数据填充此表的 PHP 脚本。我的脚本将包含循环的 MySQL 查询。我知道如何创建用于生成随机日期、整数和字符串的查询。
我有一列使用具有 4 个值的ENUM数据类型(“接受”、“有错误”、“完成”、“失败”)。
我需要知道如何生成允许我用随机值填写 ENUM 字段的查询。
如果有人提供帮助,我将不胜感激。
ps 如果我的问题太愚蠢或不够清楚,我对此表示歉意。
谢谢
将所有枚举值作为常量放在一个类中,如下所示:
<?php
class Status{
const ACCEPTED= "accepted";
const WITH_ERRORS= "with errore";
const DONE= "done";
const FAILED='failed';
}
$ref = new ReflectionClass('Status');
$statuses = $ref->getConstants();
print_r(statuses );
这应该输出:
Array
(
['ACCEPTED'] => accepted
['WITH_ERRORS'] => with errors
['DONE'] => done
['FAILED']=> failed
)
然后从$statuses
数组中选择一个随机元素使用array_rand()
echo $statuses[array_rand($statuses)];
当然,您可以直接将状态添加到数组并array_rand()
在其上使用,而不是用常量定义整个类,但恕我直言,从长远来看,这不是一个好方法。