|
| |
|
|
| |
для: kasmanaft
(28.10.2006 в 06:48)
| | | Извиняюсь за путаницу.
preg_replace использую для врисывания данных в шаблон сообщения (гостевуха).
и вот кучку типа:
$vivod=preg_replace("/{{nik}}/", $nik[$n+$i],$msg);
$vivod2=preg_replace("/{{mail}}/", $mail[$n+$i],$vivod);
$vivod3=preg_replace("/{{web}}/", $web[$n+$i],$vivod2);
$vivod4=preg_replace("/{{msg}}/", $mmm[$n+$i],$vivod3);
свести к одному preg_replace
------------
За "пс: в рег. выражениях preg_replace, выражение нужно брать в ограничители - 2 практически любых, одинаковых самвола по краям"
Спасибо! | |
| |
|
|
| |
|
|
| |
для: mrklon
(28.10.2006 в 01:03)
| | | В каком виде у вас данные в файлах записаны?
Да и тут наверное лугше будет воспользоваться ф-ей str_replace (строковые ф-и работают быстрее, а тут еще такая простая замена):
<?
$text = "text {{nik}} text {{nik}}";
echo preg_replace ("/{{nik}}/is", "VASYA", $text),'<br>';
echo str_replace ('{{nik}}', 'VASYA', $text);
?>
|
пс: в рег. выражениях preg_replace, выражение нужно брать в ограничители - 2 практически любых, одинаковых самвола по краям | |
| |
|
|
| |
|
|
| |
для: Unkind™
(27.10.2006 в 23:23)
| | | Вот про оперативную память я забыыыл совсем...я пока оставил это.
Вот новая задачка:
Есть код:
$vivod=preg_replace("{{nik}}", $nik[$n+$i],$msg);
|
Как сделать, что заменять несколько значений за раз? *Я хочу сказать, чтоб ненадо было дублировать функцию для каждой замены. заменить все зараз)
И еще, вместо "{{nik}}" он должен ввыдавать "Вася", а выает "{Вася}". Почему? | |
| |
|
|
| |
|
|
| |
для: Fddd
(26.10.2006 в 22:48)
| | | for ($i=0; $i<=10000; $i++){
$tex.=$i." Строка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка\r\n";
}
Вообще-то есть специальная функция str_repeat()...:) | |
| |
|
|
| |
|
|
| |
для: Fddd
(27.10.2006 в 22:56)
| | | " .. " - означает "вопрос все еще актуален", up?
я думал это ляп затертый....
Дело наверное в том, что длина строк уже после 10-ков, будет больше ста байт, соответственно приходится одну строку считывать в несколько заходов. Увеличив значение второго аргумента fgets хотя бы на несколько байт время работы сократится существенно (хотя будет не меньше чем file() ).
Но использовать лучше fgets, потому что если файл окажется большего размера, то он банально может не уместиться в предаставленной хостером оперативной памяти. | |
| |
|
|
| |
|
|
| |
для: Fddd
(27.10.2006 в 16:00)
| | | .. | |
| |
|
|
| |
|
|
| |
для: Fddd
(26.10.2006 в 22:48)
| | | .. | |
| |
|
|
| |
|
|
| |
для: DEM
(25.10.2006 в 19:42)
| | | >А что имено вы хранте в файлах? Какую имено информацию?
А это имеет разницу при работе скрипта?
Вот интересно... У меня получилось так что через file получается быстрее чем через fopen.
Для примера возьмёт Деневер и файл весом в 995 КБ.
Пишем в файле file.php:
<?php
list($msec,$sec)=explode(chr(32),microtime());
$HeadTime=$sec+$msec;
/* Сам код */
$file = file("files.txt");
foreach ($file as $a){
echo $a."<br>";
}
/* - - */
list($msec,$sec)=explode(chr(32),microtime());
echo "<br>Страница сгенерировалась за ".round(($sec+$msec)-$HeadTime,4)." сек.";
?>
|
А в файле fopen.php пишем:
<?php
list($msec,$sec)=explode(chr(32),microtime());
$HeadTime=$sec+$msec;
/* Сам код */
$file = fopen("files.txt", "r");
while (!feof($file)) {
$text = fgets($file, 100);
echo $text."<br>";
}
/* - - */
list($msec,$sec)=explode(chr(32),microtime());
echo "<br>Страница сгенерировалась за ".round(($sec+$msec)-$HeadTime,4)." сек.";
?>
|
Для того чтобы создать проверочный текстовый файл(files.txt) пишем скрипт:
<?php
$f = fopen("files.txt", "a+");
$tex="";
for ($i=0; $i<=10000; $i++){
$tex.=$i." Строка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка Проверка\r\n";
}
fwrite ($f, $tex);
?>
|
| |
| |
|
|
| |
|
|
| |
для: Fddd
(25.10.2006 в 19:30)
| | | А что имено вы хранте в файлах? Какую имено информацию? | |
| |
|
|
| |
|
|
| |
для: Fddd
(25.10.2006 в 19:30)
| | | >$text = fgets($file, 1000);
руководство по php:
string fgets (int fp, int length)
там сказано что параметр "int length" это длина возвращаемой строки, мол если в строке встречается символ "\n" то возвращаються все элементы до этого знака..
А так всё правильно. На скорость само собой будет влиять, смотря какой длины строка... | |
| |
|
|
|