Рандомная замена (пхп код)

G
На сайте с 03.07.2007
Offline
16
587

srand(microtime()*1000000);

$a1=array('1a','1b');
$a2=array('2a','2b','2f');
$a3=array('3a','3b','3c','3e');

$rnd1 = $a1[array_rand($a1)];
$content = str_replace('1', $rnd1, $content);
$rnd2 = $a2[array_rand($a2)];
$content = str_replace('2', $rnd2, $content);
$rnd3 = $a3[array_rand($a3)];
$content = str_replace('3', $rnd3, $content);

В результате работы при нахождении в коде единицы, скрипт заменяет все единицы на одно из указанных значений , с двойками и тройками аналогично... Нужно чтобы при нахождении каждый раз рандомом выбирал значение из общего списка, в моем случае для всех единиц подставляется одно ранее выбранное значение...

И на сколько сильнее будет грузится проц сервера, если значений 200-300?

Заранее спасибо.

Watson
На сайте с 02.07.2007
Offline
111
#1

preg_replace за один проход заменит все твои токены на заранее рандомно выбранные строки.

G
На сайте с 03.07.2007
Offline
16
#2

а если это не цифры??? у меня в основном символы, латинские и киррилица

Watson
На сайте с 02.07.2007
Offline
111
#3

Разбери пример 2, должно помочь.

G
На сайте с 03.07.2007
Offline
16
#4

ааа, не догоняю, не прогер к сожалению.... =(((( Пожет поможешь?

D
На сайте с 14.01.2007
Offline
153
#5
Watson:
Разбери пример 2, должно помочь.

только вы не забывайте, что у вас в 1. массиве(который ещё собрать надо) одни единицы, которые будут заменятся на одно и тоже значение

Watson
На сайте с 02.07.2007
Offline
111
#6

почему?! он в первый массив внесет '/1/' '/2/' '/3/' во второй рандомные подстановки соответсвующие.

goox: отписал в личку

я так понял товарищ балуется с заменой слов на синонимы в тексте 8)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий