[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите удалить строчки из файла.
yaAlex
Я использую в качестве БД текстовые файл text.txt , с таким содержимым

111::ffffff::gggggg::fhf1111
222::hhhh::ghghgh::444411
333::fdfd::jjjyjyjnh::dfdfd545
222::fdfd::gdfdfdfd::fdfdfdf
111::fddf::gdfdfg::fdfdf1
111::ffdff::gg22g::f555111

Задача состоит в том чтобы удалить все строки с 111
Я сам не силен в php у меня нечего не получается.

$file =file("text.txt");
$fp = @fopen("text.txt","w+");
for($i=0;$i<count($file);$i++)
{
$a = explode("::", $file[$i]);
if($a[0] == "111")
{
unset($file[$i]);
}
}

fputs($fp,implode("",$file));
fclose($fp)


пробовал так, но почему, то удаляются не все строки с 111
Помогите, пожалуйста, решить эту задачу.
sergeiss
Лучше не делать unset, а просто сразу же записывать в файл нужные строки, пропуская те, что не надо писать. По времени быстрее будет, я думаю. И уж всяко проще закодить smile.gif

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
yaAlex
Цитата (sergeiss @ 20.12.2013 - 17:59)
Лучше не делать unset, а просто сразу же записывать в файл нужные строки, пропуская те, что не надо писать. По времени быстрее будет, я думаю. И уж всяко проще закодить smile.gif

Спасибо! Я Все понял!!! smile.gif
Aeq
а зачем такой формат? если хочется без БД, чисто на файлах, то может проще использовать serialize / unserialize.
# читаем данные
$data = unserialize(file_get_contents('text.txt'));

# пишем данные
file_put_contents('text.txt', serialize($data));

в $data можно засунуть любой многомерный массив какой вам удобно использовать в скрипте.
Valick
Aeq, а потом "что-то с памятью моей стало".... оперативной


_____________
Стимулятор ~yoomoney - 41001303250491
Zzepish
Valick
я думаю- ошибка выведется на экран (как обычно)
Aeq
А с file('text.txt') типа все в порядке будет с оперативой))) если данных не много то сериалайз самое то. А если много то пора на бд переходить
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.