jano

Рейтинг
169
Регистрация
06.07.2011

Ясно, спасибо. Может кто знает варианты решения, имеется ввиду другой скрипт.

Может кто посоветует?

Dos3:
ну и вставляй так
echo $text[rand(0,$col_str)]." ".$text2[rand(0,$col_str2)]." ".$text3[rand(0,$col_str3)];

какие ещё замены в файлах)

или нагенери сначала ключей, потом уже их юзай

Имелось ввиду, что подстановка будет в файлах тоже:

$text=file("file.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);

Dos3:
выше уже есть, примерно так
<?
$text=file("file.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
$col_str = count($text)-1;
?>

<?
echo $text[rand(0,$col_str)]."<br />";
echo $text[rand(0,$col_str)]."<br />";
echo $text[rand(0,$col_str)]."<br />";
?>
."<br />" - это убрать если перенос строки не нужен

А если немного усложнить задачу.. В каждом файлике file.txt, file1..2.txt есть значение: key1, key2, key3

Как сделать так что бы скрипт подставлял значение вместо key1, kty2 или key3 другой кейворд..

Для примера: file.txt - файл с длинными кейвордами:

Продажа дорогих key1 машин
Продажа красивых key2 автомобилей

файл key1.txt с короткими кейвордами:

американских
надёжных
супер

файл key2.txt с короткими кейвордами:

старых
красных
синих

Соответственно скрипт должен вывести что-то на подобе этого:

Продажа дорогих надёжных машин
Продажа красивых старых автомобилей

Т.е. задача идёт что бы возможность подстановки в файлах была тоже.

wolfston:
А это и есть полностью рабочий код а если ума не хватает его реализовать, найми того у кого он есть

Круто, я думаю тогда бы половины топиков на серче не было бы, если руководствоваться твоим советом "найми того у кого он есть". Есть же люди, которые готовы помочь безвозмездно.

Dos3:
выше уже есть, примерно так
<?
$text=file("file.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
$col_str = count($text)-1;
?>

<?
echo $text[rand(0,$col_str)]."<br />";
echo $text[rand(0,$col_str)]."<br />";
echo $text[rand(0,$col_str)]."<br />";
?>
."<br />" - это убрать если перенос строки не нужен

Большое спасибо! :)

vitvvs:
в теле страницы ссылки на изображения вида


в шаблоне, на примере пандоры


а htaccess пишем



создаем файл image.php и кидаем его в корень сайта

Спасибо, я представляю примерно как это будет. Нужен полностью рабочий код.

Dos3:
теоретики появились в топике :)

возьмите да проверьте оба варианта, я проверил на проце i5, 6гб оперативки, и даже тут разница хорошо заметна
тут и думать не надо, накуя 30 раз мешать массив ?

ключей в файлике было 41300(чуть больше чем надо тсу)
30 раз вывод строки

ps причём разница я бы сказал существенная

Отпиши пожалуйста, какой будет рабочий код, протестирую.

LEOnidUKG:
Вы всё правильно написали. Считывайте сразу все файлы в разные переменные потом подставляйте нужны.

---------- Добавлено 11.01.2015 в 23:25 ----------

<?
$text=file("/home/keyword.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES));
$text2=file("/home/keyword2.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES));
$text3=file("/home/keyword3.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES));

?>

и выводим
<? shuffle($text); echo $text[0];?>

<? shuffle($text2); echo $text2[0];?>

<? shuffle($text3); echo $text3[0];?>

Толковая голова у тебя :)

Огромное спасибо! :)

LEOnidUKG:
Тогда делайте по другому.

В начале страницы:

<?
$text=file("/home/keyword.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES)); // Считываем массив
shuffle($text); // Перемешиваем
?>

Далее где нужно уже расставляете:

<? echo $text[0];?>
<? echo $text[1];?>
<? echo $text[2];?>
........
<? echo $text[30];?>

Сколько уже вам надо.

---------- Добавлено 11.01.2015 в 23:00 ----------

Если количество раз не известно:

<?
$text=file("/home/keyword.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES)); // Считываем массив

?>

Далее где нужно уже расставляете:

<? shuffle($text); echo $text[0];?>
<? shuffle($text); echo $text[0];?>
<? shuffle($text); echo $text[0];?>
........
<? shuffle($text); echo $text[0];?>

тем самым мы не будем дёргать файл с диска много раз.
И я не ошибся, везде 0 надо ставить в таком варианте.

Бывает, что нужно использовать не только один файлик с кейвордыми, то указывать соответственно нужно так к примеру?

<?

$text2=file("/home/keyword.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES)); // Считываем массив

?>

и выводим

<? shuffle($text2); echo $text2[0];?>

---------- Post added 11-01-2015 at 20:21 ----------

jano:
Бывает, что нужно использовать не только один файлик с кейвордыми, то указывать соответственно нужно так к примеру?


<?
$text2=file("/home/keyword.txt",FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES)); // Считываем массив

?>

и выводим
<? shuffle($text2); echo $text2[0];?>

Т.е. какой будет правильным код, если учитывать, что на странице будет использоваться несколько файлов: keyword1.txt, keyword2.txt, keyword3.txt

Всего: 424