Помогите подправить код,криво работает

grendmaster

Постоялец
Регистрация
21 Апр 2010
Сообщения
67
Реакции
2
Привет всем,
вот код
PHP:
$find[] = '.';
$replace[] = ' $key_array[$i] ';
$textgoto = str_replace($find, $replace, $text);
почему то вставляет не вывод переменной а саму эту переменную $key_array[$i] и второй вопрос как сделать чтобы не все точки заменялись а рандомно, rand(1,5) как приделать
 
Привет всем,
вот код
PHP:
$find[] = '.';
$replace[] = ' $key_array[$i] ';
$textgoto = str_replace($find, $replace, $text);
почему то вставляет не вывод переменной а саму эту переменную $key_array[$i] и второй вопрос как сделать чтобы не все точки заменялись а рандомно, rand(1,5) как приделать

Во первых, **х использовать массивы $replace[] $find[], вроде можно и строками обоитись?

Во вторых в строках в одинарных кавычках, переменные не интерпалируются....

в третьих str_replace, чувствительна к пробелам, так что тут тоже надо быть внимательным..

в четвертых, из приведенных тобой 3 строк кода, совсем не ясно
зачем ты хочешь прикрутить rand , так что давай выложи весь код
а мы его доработаем )
 
PHP только начал изучать и не знаю еще что нужно и правильней испльзовать поэтому и спрашиваю,что подправить в коде чтобы вставлялся вывод переменной,rand нужен чтобы ограничить кол-во вставок, и главное этот код в отличии от string_replace у меня работает
вот весь код
PHP:
$key_array = file('ПУТЬ_ДО_ПАПКИ_С_ФАЙЛОМ_КЕЕВ/key.txt');
$count_key_array = sizeof($key_array);
for ($i=0; $i<$count_key_array; $i++) {
    $text = file_get_contents('ПУТЬ_ДО_ПАПКИ_С_ТЕКСТАМИ/'.$i.'.txt');
$find[] = '.';
$replace[] = ' $key_array[$i] ';
$textgoto = str_replace($find, $replace, $text);

Часть кода подсказал Trooll

Просто скажите плиз что не правильно в этой строке: $replace[] = ' $key_array[$i] ';
и покажите как правильно
 
Просто скажите плиз что не правильно в этой строке: $replace[] = ' $key_array[$i] ';
и покажите как правильно
ну как минимум ковычки одинарные убери
PHP:
$replace[] =  $key_array[$i] ;
 
Спасибо кавычки убрал заработало,но нарушилась сама перемення,то есть она теперь не делает то что должна,ее вывод должен меняться а сейчас он постоянный
 
А что находится в
'ПУТЬ_ДО_ПАПКИ_С_ФАЙЛОМ_КЕЕВ/key.txt'
'ПУТЬ_ДО_ПАПКИ_С_ТЕКСТАМИ/'.$i.'.txt'

?
 
в каком смысле что там находится?
как rand() добавить подскажите,
 
А что находится в
'ПУТЬ_ДО_ПАПКИ_С_ФАЙЛОМ_КЕЕВ/key.txt'
'ПУТЬ_ДО_ПАПКИ_С_ТЕКСТАМИ/'.$i.'.txt'
?
ну по видимомму в key.txt ключи в $i.txt тексты и я так понимаю точки в текстах должны заменяться на рандомный ключ? не совсем понятно куда надо прикрутить rand() к ключам или к точкам?
 
Rand() нужно прикрутить к точкам,чтобы не все точки заменялись а одна считая с начала,и не на рандомный ключ а на тот который в данный момент находится в

$key_array[$i]
 
Rand() нужно прикрутить к точкам,чтобы не все точки заменялись а одна считая с начала,и не на рандомный ключ а на тот который в данный момент находится в
$key_array[$i]
тогда так
PHP:
<?php
$key_array = file('ПУТЬ_ДО_ПАПКИ_С_ФАЙЛОМ_КЕЕВ/key.txt');
$count_key_array = count($key_array);
for ($i=0; $i<$count_key_array; $i++) {
$text = file_get_contents('ПУТЬ_ДО_ПАПКИ_С_ТЕКСТАМИ/'.$i.'.txt');
$find ="/\./"; 
$replace = $key_array[$i];
$textgoto = preg_replace($find, $replace, $text,1); 
}
 
Назад
Сверху