Справка: PHP-скрипт – генерирует случайную строку + текст + несколько строк

  • Автор темы aka_Pyro
  • 35
  • Обновлено
  • 12, May 2024
  • #1
получил этот сценарий... но это не совсем то, что мне нужно... поэтому ищу помощи...

Это код:
 <?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: по сути, я хотел, чтобы этот небольшой PHP-скрипт генерировал тысячи строк (~3000)...

в этом формате:

мойтекст/(the_random_string_here)

мойтекст/(the_random_string_here)

мойтекст/(the_random_string_here)

мойтекст/(the_random_string_here)

мойтекст/(the_random_string_here)

до самого конца (~3000 строк)

в каждой строке есть случайная строка...

Огромное вам спасибо, ребята!

aka_Pyro


Рег
01 Jan, 2011

Тем
1

Постов
3

Баллов
13
  • 19, May 2024
  • #2
Вы можете использовать эту функцию для генерации случайной строки,
 function rand_code($len)

{

$min_lenght= 0;

$max_lenght = 100;

$bigL = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

$smallL = "abcdefghijklmnopqrstuvwxyz";

$number = "0123456789";

$bigB = str_shuffle($bigL);

$smallS = str_shuffle($smallL);

$numberS = str_shuffle($number);

$subA = substr($bigB,0,5);

$subB = substr($bigB,6,5);

$subC = substr($bigB,10,5);

$subD = substr($smallS,0,5);

$subE = substr($smallS,6,5);

$subF = substr($smallS,10,5);

$subG = substr($numberS,0,5);

$subH = substr($numberS,6,5);

$subI = substr($numberS,10,5);

$RandCode1 = str_shuffle($subA.$subD.$subB.$subF.$subC.$subE);

$RandCode2 = str_shuffle($RandCode1);

$RandCode = $RandCode1.$RandCode2;

if ($len>$min_lenght && $len<$max_lenght)

{

$CodeEX = substr($RandCode,0,$len);

}

else

{

$CodeEX = $RandCode;

}

return $CodeEX;

}

echo rand_code(10);

PHP:
 

север1


Рег
24 Jun, 2012

Тем
14

Постов
37

Баллов
177
  • 29, May 2024
  • #3
Не хочу сильно прерывать, но вот немного более быстрая версия вашей функции:
 

<?php

function generateRandomString($length = 10)

{

srand(time());

$characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

if ($length > strlen($characters))

$length = strlen($characters);

$characters = str_shuffle($characters);

return substr($characters,0,$length);

}

Код (разметка): Будьте здоровы...
 

danesko007


Рег
18 Jul, 2015

Тем
0

Постов
2

Баллов
2
  • 04, Jun 2024
  • #4
Еще одна версия, вмещающая максимально длинные строки.
 

/**

* accommodates long string creation

*/

function generate_random_string($length = 10)

{

$buf = implode('', array_merge(range('0','9'), range('a','z'), range('A','Z')));

if ($length > strlen($buf))

$buf = str_repeat($buf, ceil($length / strlen($buf)));

return str_shuffle(substr($buf, 0, $length));

}

#Try longer string

print generate_random_string(1024);

PHP:
 

guenona


Рег
01 Jan, 2011

Тем
0

Постов
3

Баллов
3
Тем
49554
Комментарии
57426
Опыт
552966

Интересно