首页 > 解决方案 > 将来自不同数组的随机值插入 MySQL 表中的列

问题描述

我想将来自不同数组的随机值插入 MySQL 选项卡(见下文)例如: ARRAYS

$st = array(a,b,c,d);
$ci = array(x,y,z,q);
$zi = array(0,1,2,3);
$st = array(00,01,02,03);

表格

$sql = "CREATE TABLE IF NOT EXISTS us_tAddress (
 id INT(6) UNSIGNED   AUTO_INCREMENT PRIMARY KEY,
 country VARCHAR(100),
 city VARCHAR(100),
 zip VARCHAR(100),
 street VARCHAR(100),
 created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
 updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
 ) "

我从这样的循环开始:

foreach ($st as $value)  {$sql = "INSERT INTO us_tAddress( street ) VALUE('".$value."')"; mysqli_query($conn,$sql);}

但它根本不起作用。无论如何我不知道如何添加 RANDOM 功能......

如果您有任何建议,如何做,我将非常感谢。谢谢你。

标签: phpmysql

解决方案


您在注释中指定需要插入数组中的所有值,但顺序是随机的。为此,您需要的只是shuffle()函数。

$st = array('a','b','c','d');
$ci = array('x','y','z','q');
$zi = array(0,1,2,3);
$st2 = array('00','01','02','03');

shuffle($st);
shuffle($ci);
shuffle($zi);
shuffle($st2);

foreach($st as $key => $value) {

    $column_a = $value; //random value from $st array
    $column_b = $ci[$key]; //random value from $ci array
    $column_c = $zi[$key]; //random value from $zi array
    $column_d = $st2[$key]; //random value from $st2 array

    //insert values, which will all be in a random order.
}

示例结果


推荐阅读