Помогите написать простую функцию к РБ

Статус
В этой теме нельзя размещать новые ответы.

Lexx59

Профессор
Регистрация
9 Янв 2009
Сообщения
183
Реакции
38
Для проверки одной гипотезы нужна функция к РБ.
Суть - взять из файла случайную строчку и вставить вместо макроса.
Аналог работы [RANDKEYWORD], только кейворды должны браться из другого файла.

Например, макрос назовем [RANDKEYWORD2], а файл, из которого брать строчку - keywords2.txt

Понимаю, что функция элементарная, но, к сожалению в php я пока nulled :(
 
Найди функцию в РБ и просто скопируй и замени по аналогии
 
Найди функцию в РБ и просто скопируй и замени по аналогии
До этого я и сам додумался. Только простым копированием функции не обойтись.

Замена макроса делается тут
Код:
for ($i=0; $i<100; $i++){
	if (!strstr($myshab, "[RANDKEYWORD]")) break 1;
	$myshab=preg_replace("/\[RANDKEYWORD\]/", GetRandKeyword(), $myshab, 1);
	}

Функция, достающая кейворд
Код:
function GetRandKeyword(){
	global $keys, $onepage;
	if ($onepage=="on") {
		$s=rand(0, (sizeof($keys)-1));
		$s2=rand(0, (sizeof($keys[$s])-1));
		$keyword=$keys[$s][$s2];
	}

	else {$s=rand(0, (sizeof($keys)-1)); $keyword=$keys[$s];}
	return $keyword;
}

А наполнение массива кейвордов, как я понимаю, тут:
Код:
	// ПОЛУЧАЕМ КЕИ
	$keys=array();
	if ($nn_keys=="keypole"){
		$keys=explode("\n", $nn_keypole);
		for ($i=0, $lk=sizeof($keys); $i<$lk; $i++){
			$keys[$i]=trim($keys[$i]);
		}
	}

	if ($nn_keys=="keyfile"){
		$keys=OpenFile('nn_keyfile');
	}
	
	if ($nn_keys=="keyspisok"){
		$keys=file("data/keys/".$keyspisok.".txt");
	
	}

	$keys=str_replace("'", "", $keys);
	$keys=str_replace('"', "", $keys);
	$keys=str_replace("\r\n", "", $keys);
	$keys=str_replace("\n", "", $keys);

	// ДЕЛАЕМ РУССКИМ КЕЯМИ ВИНДОВУЮ КОДИРОВКУ
	if ($lang=="ru"){
		$tkeys=implode("\n", $keys);
		$tkeys=decode_me($tkeys);
		$keys=explode("\n", $tkeys);
		unset($tkeys);
	}
Делаю по аналогии, но че-то не меняет :(
 
Недооценил свои силы. Тему можно закрывать.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху