随机插入数据库

时间:2014-06-03 08:24:33

标签: php

我想在我的数据库中插入一个庞大的联系人列表(用于某些性能测试)。

我在随机化一些数据方面遇到了一些麻烦。

   $input = array("city1", "city2", "city3");
   $city= shuffle($input);

如果我理解清楚shuffle函数,我需要传递一个数组,然后才能填充它,对吧?那么这里有什么问题?

PS。我知道,只是基本的PHP内容,但我无法在stackoverflow上找到任何类似的数组示例,所以请不要因为打开这个主题而生气。

1 个答案:

答案 0 :(得分:4)

您的代码:$city=shuffle($input);不会将混洗数组传递给$city变量 - 而是函数返回TRUE或FALSE,具体取决于它是否成功完成。该函数实际上是对您的ORIGINAL数组进行洗牌。

您正在为$ city数组分配布尔值(true或false) - 这是函数的输出 - 即它是否有效。

<?php
   $input = array("city1", "city2", "city3");

    print_r($input);

    shuffle($input);

    print_r($input);
?>

Shuffle函数将原始数组混洗。

输出:

Array
(
    [0] => city1
    [1] => city2
    [2] => city3
)
Array
(
    [0] => city1
    [1] => city3
    [2] => city2
)

编辑:回答评论:

您可以使用标准PHP格式的方括号和键来访问数组的各个元素吗?

<?php
    $input = array("city1", "city2", "city3");
    // Access one element of the array:
    echo $input[0];

    // shuffle the array about.
    shuffle($input);

    // Access the same element of the array 
    // and see if the data is the same
    echo $input[1];
?>

这是一个包含数组中任何位的字符串,然后是相同的元素 - 可能有也可能没有相同的输出。