【问题标题】:how to generate a random string + text + multiple lines如何生成随机字符串+文本+多行
【发布时间】:2016-09-06 05:08:16
【问题描述】:

我实际上是从这里得到这个脚本的……但这不是我所需要的……

<?php
function generateRandomString($length = 10) {
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $charactersLength = strlen($characters);
    $randomString = '';
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[rand(0, $charactersLength - 1)];
    }
    return $randomString;
}

// Echo the random string.
// Optionally, you can give it a desired string length.
<?php echo generateRandomString(); ?>
?>

基本上,我希望这个小 php 脚本能够生成数千行 (~3000)...

采用这种格式:

mytext/(the_random_string_here)
mytext/(the_random_string_here)
mytext/(the_random_string_here)
mytext/(the_random_string_here)
mytext/(the_random_string_here)

直到最后(约 3000 行),每行都有一个随机字符串...

【问题讨论】:

  • 您应该删除字符 0 和 1(零和一)和 l、(小写 L)O 和 L,因为这些字符很容易相互混淆。
  • 我个人更喜欢 str_shuffle,php.net/manual/en/function.str-shuffle.php 用于随机字符串和 substr,它比循环快几倍。
  • 您需要了解循环。它们是编程中最重要的部分之一。在这种情况下,请使用 for 循环,尽管 while 循环也可以。在此处阅读有关 PHP 循环的信息:tutorialspoint.com/php/php_loop_types.htm

标签: php string random


【解决方案1】:

您可以使用 for 循环生成 3000 次

for($i = 0; $i < 3000; $i++){
    echo 'mytext/'.generateRandomString().'<br>';
}

答案在您提供的代码 sn-p 中

【讨论】:

    【解决方案2】:

    如果行数已知,for 循环是一个不错的选择。在generateRandomString 函数中有一个很好的循环示例。

    你可以这样做:

    for ($i = 0; $i < 3000; $i++) {
       echo "mytext/(" . generateRandomString() . ")<br>\n";
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-09
      • 2017-08-01
      • 2011-06-30
      相关资源
      最近更新 更多