|
|
|
| Например у меня есть файл примерно такова содержания
Как мне например при $_GET['x']=obj выдать "221456"?
И еще.. как мне удалить всю строку начинающуюся с того же "obj"
Зарание спасибо! :) | |
|
|
|
|
|
|
|
для: Yakor
(08.09.2006 в 16:53)
| |
$str="end:sddsdd"; // или любой текст вашего шаблона
if (eregi(":",$str))
$str = substr(strstr($str,":"),1); // читает всё после :
echo "$str";
|
| |
|
|
|
|
|
|
|
для: Владимир22
(08.09.2006 в 19:52)
| | Спасибо!
P.S> а как найти эту строку в файле? | |
|
|
|
|
|
|
|
для: Yakor
(08.09.2006 в 16:53)
| | в файле могут появиться строки с одним и тем же префиксом?
И насколько этот файл большой? | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2006 в 20:14)
| | >в файле могут появиться строки с одним и тем же префиксом?
нет
>И насколько этот файл большой?
не больше 10-20 строк | |
|
|
|
|
|
|
|
для: Yakor
(08.09.2006 в 20:19)
| | тогда имеет смысл написать что-то такое:
<?
$file = file('file.txt');
$list = array();
foreach($file as $line)
{
$key = '';
list($key, $val) = explode(':', trim($line));
if(!empty($key))
$list[$key] = $val;
}
echo $list[$_GET['x']]; // вывод
unset $list[$_GET['x']]; // удаление
$f = fopen('file.txt', 'wb');
foreach($list as $key => $val)
fwrite($f, "$key:$val\r\n");
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(08.09.2006 в 20:29)
| | Огромное спасибо! | |
|
|
|
|
|
|
|
для: Yakor
(09.09.2006 в 00:30)
| | Несколько поспешил. Вот этот вариант более корректен.
<?
$file = file('file.txt');
$list = array();
foreach($file as $line)
{
$key = '';
$line = trim($line);
if(($idx = strpos($line, ':')) === false)
continue;
$key = substr($line, 0, $idx);
$val = substr($line, $idx+1);
$list[$key] = $val;
}
echo $list[$_GET['x']]; // вывод
unset ($list[$_GET['x']]); // удаление
$f = fopen('file.txt', 'wb');
foreach($list as $key => $val)
fwrite($f, "$key:$val\r\n");
?>
|
Разница проявляется в строках, где два и более символа ':' | |
|
|
|