Язык
Контакты
GitHub
Поддержка
Регистрация
Войти
Логин: Пароль: Запомнить:
Пользователи
Последние сообщения
Ответить
1 2

Работа с файлами

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#1
Вот возник вопрос, как редактировать определенную строку в файле, не удаляя/заменяя/дублируя, контент остальных строк

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#2
ну для этого надо знать как уту строку идентифицировать. Как вариант получаем все содержимое, редактируем нужную часть и записываем все обратно. Допустим прочитали из файла
Code:
ф=ы
в=а
р=ь
Потом делаем
 1 
 2 
<?php $str str_replace('р=ь''р=t'$str);?>
Затем обратно сохраняем
 1 
 2 
<?php file_put_contents('file.dat'$str);?>
И все. заменили только в одном месте как и надо былосделать:) А еще лучше записывать в файл сериализованные данные. А после получения их из файла обратно разсериализовывать. Таким образом получать массив с которым удобно работать:)
 1 
 2 
 3 
 4 
 5 
<?php $array = array(1234);
$str serialize($array);
//теперь в $str находится строка
$array unserialize($str);
//теперь в $array масиив который мы получили из строки $str?>

Отредактировано автором 6 Ноя 2010
Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#3
А что значит сериализировать?

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#4
собственно внизу и написал. это превращение массива в строку и наоборот

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#5
 1 
 2 
<?php $mysql_get file_get_contents('mysql_conf.php');
$cont str_replace('{FILE_VALUE}'$mysql_get$cont);?>
Пытаюсь засунуть содержимое файла в форму

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#6
все правильно. только у поля file не может быть дефолтного значения:)

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#7
не понял)))
почему не выводит то?

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#8
что именно не выводит и есть ли вообще что-то в файле?
Не забывай в самом начале писать error_reporting(E_ALL); он может указать на ошибку если таковая есть. Если что то можешь тут выложить весь код этого скрипта, посмотрим что там

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#9
все ето есть. в формочке выводит:
{FILE_VALUE}

м, файл, конечно же, заполнен

Добавлено 2010.11.13 17-51

Улыбнуло решение.

Я просто присваивал для переменной cont значения после того, как присвоил её значение переменной шаблона

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#10
Радует что ты уже начинаешь сам находить баги. :) Просто не забывай проверять переменные в разных местах. Если какаято переменная содержит не то что должна то проверь где именно в коде ее значение становится не адекватным. Например у тебя в коде 100 строк. Проверил в пятой - все ОК. Проверил в 30 - все ок. Проверил в 50 - лажа. Значит бага гдето между 30 и 50. Тогда с ужаешь поиск и так находишь багу:)

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)
1 2
Сейчас online: 155. Зарегистрированных: 0. Гостей: 155.