|
|
|
| Как мне сделать, что бы из одного текстового файла(file.txt) с помощью php читал(загружал) строку при поступлении запроса /index.php?id=5 где 5 - это строка?
Вот так:
<?
if ($id != "") {
$id--;
$file=file("file.txt");
$fp=fopen("file.txt","w");
fputs($fp,implode("",$file));
fclose($fp);
}
?>
и вызывать /index.php?id=5 - выведется 5-я строка из текстового файла file.txt
я прав или ошибаюсь?
если ошибаюсь то подскажите как мне это сделать?
Заранее спасибо. | |
|
|
|
|
|
|
|
для: web12345
(06.02.2006 в 09:40)
| | Я бы сделал так:
<?php
if(!empty($_GET['id']))
{
$file=file("file.txt");
$string_to_show=$_GET['id']-1;
echo $file[$string_to_show];
}
?>
|
А ваш скрипт прочитает файл построчно в массив
<?php
$file=file("file.txt")
?>
|
Затем "склеит" весь массив в одну строку
<?php
implode("", $file);
?>
|
и, поскольку вы открываете файл с флагом "w" (открывает файл только для записи; помещает указатель в начало файла и обрезает файл до нулевой длины), весь файл перезапишется, причем в нем будет только одна строка - "склеенное" содержимое оригинального file.txt. Выода там никакого не предвидится.
Вообще, когда вы читаете файл функцией file(), открывать его снова для чтения совсем не обязательно.
Или вы хотите сделать что-то другое? | |
|
|
|