Контент для доров?
На страницу Пред.  1, 2, 3
Новая тема Написать ответ
# Пн Май 14, 2012 1:16 amIseeDeadPeople Зарег.: 06.12.2005 ; Сообщ.: 21724Ответить с цитатой
kabab писал(а):
IseeDeadPeople, спасибо за быстрый ответ. Да, скрипт работает, была моя ошибка. А хайд не могу пока посмотреть... Smile Было бы классно если он еще обрамлял некоторые ключи в теги [b] [i] [u].



Ну можно сделать, некоторые, это какие!? Отдельный массив-строк сделать, которые будут выделены, или же случайно из основного $KEYS (единственного) брать !? Процент насыщения, наверно от 1 до 3 !? (это конечно на ходу можно скорректировать будет, даже в отдельную переменную выносить не надо будет, хотя сложно на самом деле, длины то слов разные, ну примерно предугадать наверно получится без строгой формулы)
# Пн Май 14, 2012 1:24 amkabab Зарег.: 11.05.2012 ; Сообщ.: 3Ответить с цитатой
Случайно из $KEYS выбирал несколько кеев и обрамлял их тегами, или хотя бы ставил в стронг кей под который затачивается страница. Не знаю еще как добавить больше знаков препинаний - "?", "!", "-" и т.д.
# Вт Май 15, 2012 4:07 pmIseeDeadPeople Зарег.: 06.12.2005 ; Сообщ.: 21724Ответить с цитатой
Код:
$KEYS = "key11 key12
key2
key3
key21
key31
key21
key31
key2122222
key31222222
key2122222222
key3122222222
key212
key313
key214
key315
key2144
key31445
key2155
key31555411
key31311
key2141
key3151
key21441
key314451
key21551
key314451222
key21551333
key315554
keyX1 keyX2
keyX";

$ponitegi = array("\[b\],\[/b\]","\[u\],\[/u\]","\[i\],\[/i\]"); // В элементах все обратные слеши убрать. Выбирается случайный тег, можно добавить/сократить свои, массив любой размерности выше 1, разделитель в каждом элементе запятая, "начальный тег(,) конечный тег"

srand ((double) microtime() * 1000000);
mt_srand ((double) microtime() * 1000000);

function xtext ($strsize) { global $keys; $keysLocal = array(); $keysLocal = $keys; $keysLocal = array_unique($keysLocal); shuffle($keysLocal); if (!isset($strsize) || $strsize == "0" || strlen($strsize)<2) { $strsize = "4556"; $strsize = mint(mt_rand(mint($strsize/2), $strsize + mint($strsize/2))); } $ret = ""; $nextuf = "0"; while (strlen($ret)<$strsize && count($keysLocal)>0) { $k = array_shift($keysLocal); $k = trim($k); $selecter = mt_rand(1,21); $addel = ""; if ($selecter == "1") { $addel = strtolower($k)."."; $nextuf = "1"; }  if ($selecter == "2") { $addel = strtolower($k)."."; $nextuf = "1"; } if ($selecter == "3") { $addel = strtolower($k).";"; } if ($selecter == "4") { $addel = strtolower($k).","; } if ($selecter == "5") { $addel = strtolower($k).","; } if ($selecter == "6") { $addel = strtolower($k).","; } if ($selecter >= "7") { $addel = strtolower($k)." "; }
 if ($nextuf == "2") { $addel = ucfirst($addel); $nextuf = "0"; }if ($nextuf == "1") { $nextuf++; } $ret = $ret . trim($addel). " "; } return ucfirst(substr($ret, 0, strlen($ret)-1))."."; } 

$lines = explode("\n", $KEYS);
$keys = array();
foreach ($lines as $line) {


if (mt_rand(1,100) < 10) { // 10, это и есть примерно процент насыщения

$keys[] = strtolower(trim($line));
shuffle($ponitegi); $tmp = $ponitegi["0"]; list($tmp1,$tmp2) = explode(",", $tmp);
$keys[] = $tmp1.strtolower(trim($line)).$tmp2;
} else { $keys[] = strtolower(trim($line)); }


}
shuffle($keys);

echo xtext(3000);

# Вт Май 15, 2012 4:37 pmIseeDeadPeople Зарег.: 06.12.2005 ; Сообщ.: 21724Ответить с цитатой
kabab писал(а):
Не знаю еще как добавить больше знаков препинаний - "?", "!", "-" и т.д.



Замени на $selecter = mt_rand(1,21); напр, на $selecter = mt_rand(1,25);
Теперь у нас есть еще четыре свободные пони.
Далее там где

if ($selecter == "3") { $addel = strtolower($k).";"; } if ($selecter == "4") { $addel = strtolower($k).","; } if ($selecter == "5") { $addel = strtolower($k).","; } if ($selecter == "6") { $addel = strtolower($k).","; } if ($selecter >= "7") { $addel = strtolower($k)." "; }

Замени на

if ($selecter == "3") { $addel = strtolower($k).";"; } if ($selecter == "4") { $addel = strtolower($k).","; } if ($selecter == "5") { $addel = strtolower($k).","; } if ($selecter == "6") { $addel = strtolower($k).","; }

if ($selecter == "7") { $addel = strtolower($k)."?"; }
if ($selecter == "8") { $addel = strtolower($k)."?"; }
if ($selecter == "9") { $addel = strtolower($k)."!"; }
if ($selecter == "10") { $addel = strtolower($k)." - "; }


if ($selecter >= "11") { $addel = strtolower($k)." "; }
Новая тема Написать ответ    ГЛАВНАЯ ~ ВОПРОСЫ ОТ НОВИЧКОВ
 На страницу Пред.  1, 2, 3
Любое использование материалов, размещенных на ArmadaBoard.com, без разрешения владельцев ArmadaBoard.com запрещено.