HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Вопрос по Php
  #1  
Старый 11.08.2006, 15:55
AoD
Познающий
Регистрация: 10.02.2006
Сообщений: 42
С нами: 10656111

Репутация: 20
По умолчанию Вопрос по Php

Ребят как на PHP в файле заменить один символ на другой.

То есть, открываем файл, ищем нужные символы, например (ttt) заменяем их на (zzz) и закрываем файл.
 
Ответить с цитированием

  #2  
Старый 11.08.2006, 15:59
em00s7
Участник форума
Регистрация: 02.05.2006
Сообщений: 193
С нами: 10539834

Репутация: 25
По умолчанию

Напимер если твои симоволы на 1 строчке то :
<?
$i = file("1.txt"); // твой файл
$i[0] = str_replace("ttt","zzz",$i[0]);
echo $i[0];

Последний раз редактировалось em00s7; 11.08.2006 в 16:05..
 
Ответить с цитированием

  #3  
Старый 11.08.2006, 16:24
Trinux
Познавший АНТИЧАТ
Регистрация: 26.11.2004
Сообщений: 1,149
С нами: 11291306

Репутация: 569


По умолчанию

http://www.php.net/manual/ru/function.str-replace.php
http://www.php.net/manual/ru/function.preg-replace.php
http://www.php.net/manual/ru/function.ereg-replace.php
http://www.php.net/manual/ru/function.eregi-replace.php
 
Ответить с цитированием

  #4  
Старый 11.08.2006, 16:41
AoD
Познающий
Регистрация: 10.02.2006
Сообщений: 42
С нами: 10656111

Репутация: 20
По умолчанию

Ребят функции замены я знаю. Наверное, неправильно поставил вопрос.

Меня не интересует замена в переменной. Меня интересует замена в файле. То есть, находим символ в файле, смещаем туда указатель и меняем на то, что нужно. Желательно привести пример в коде.

Код:
<?php
$filepathstat = "temp02"; // файл для работы
$filepathopen = fopen($filepathstat,"a+"); // открываем на чтение и на запись
$zamenit = aaa //символы которые необходимо заменить

  while(!feof($filepathopen)) 
   {
   $string = fgets($filepathopen); // читаем файл построчно
     if(ereg($zamenit,$string)) // если в строке найдена (aaa) то условие выполняется
     {
     $editstring=ereg_replace($zamenit, "ttt", $string); // находим и заменяем
     fputs($filepathopen,$editstring); // пишим изменённую строку в файл
     }
   }
fclose($filepathopen); // закрываем файл
?>
Дык вот в самом файле в итоге замены нет. А изменённую строку он дописывает в конец файла.

Последний раз редактировалось AoD; 11.08.2006 в 16:50..
 
Ответить с цитированием

  #5  
Старый 11.08.2006, 16:55
link.
Познающий
Регистрация: 15.05.2005
Сообщений: 58
С нами: 11046519

Репутация: 1
По умолчанию

PHP код:
 $text 'aaa';  // что меняем 
 
$retext 'ttt'// на что меняем
 // Читаем содержиоме файла 
 
$content file_get_contents("temp02"); 
 
// Заменяем 
 
$content str_replace($text$retext$content);  
 
// Перезаписываем файл 
 
$fd fopen("temp02""w"); 
 if(
$fd
 { 
    
fwrite($fd$content); 
    
fclose($fd); 
 } 
попробуй так
 
Ответить с цитированием

  #6  
Старый 11.08.2006, 16:58
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
С нами: 10485026

Репутация: 1879


По умолчанию

Хм, а не проще будет засунуть всё в file типо вот так:
$fp=file(\"test.txt\");
foreach($fp AS $v)
{
$v=str_replace(\"\\r\",\'\',$v);
$v=str_replace(\"\\n\",\'\',$v);
if(тут твоё условие сравнение строк)
}
НА мой взгляд так удобнее. ДА и не только удобнее-бесспорно лучше...
 
Ответить с цитированием

  #7  
Старый 11.08.2006, 17:13
AoD
Познающий
Регистрация: 10.02.2006
Сообщений: 42
С нами: 10656111

Репутация: 20
По умолчанию

Всем спосибо помогли. Тему можно закрывать!
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP 186 21.02.2010 02:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.