Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Получение содержимого файла в переменную в виде строки

Сообщения:  [1-10]   [11-17] 

 
 автор: antf   (01.07.2006 в 18:34)   письмо автору
 
   для: resett   (01.07.2006 в 17:41)
 

Вот несколько способов:
$str - строка
$filename - имя файла

Способ первый (самый легкий):
$str = file_get_contents($filename);

Способ второй (можно использовать в php3)

$array = file($filename);
$str = implode($array)

Способ третий: немного громоздкий, но универсальный
<?
$fp 
= @fopen($filename'r');
if(!
$fp)
{
  print 
'error';
  exit;
}
while(!
feof($fp))
{
  
$str $str fgets($fp8192);
}
fclose($fp)
?>

   
 
 автор: resett   (01.07.2006 в 17:41)   письмо автору
 
   для: resett   (01.07.2006 в 17:19)
 

Воо! нашел способ из массива получить переменную моего формата:


$arr_string = implode("\n",$data);

   
 
 автор: resett   (01.07.2006 в 17:19)   письмо автору
 
   для: resett   (01.07.2006 в 17:08)
 

Млин... сам дошел... этож нада... постарел..


<?
error_reporting
("E_NONE");

if(
$todo == "update")
{
    
$fd fopen("file.txt","w");
    
fwrite($fd,$new_data);
    
fclose($fd);
}
?>

<form method="POST" action="index.php">
<textarea rows="14" name="new_data" cols="49">
<?
$data 
file('file.txt');
foreach(
$data as $key => $val)
{
echo 
$val;
}
?>
</textarea>
<p>
<input type="submit" value="Отправить" name="B1">
<input type="reset" value="Сброс" name="B2">
<input type="hidden" name="todo" value="update">
</p>
</form>

   
 
 автор: RV   (01.07.2006 в 17:16)   письмо автору
 
   для: resett   (01.07.2006 в 17:08)
 

а запятую на точку не судьба исправить? у меня почему то все выводит как в файле

   
 
 автор: resett   (01.07.2006 в 17:08)   письмо автору
 
   для: RV   (01.07.2006 в 16:59)
 

Чето нийуха не получается.. обидно...

Кароч.. может так будет.. понятней.. нужно просто сделать txt редактор который при просто запуске только считывает файл, а когда мы допишем в текстарею еще кусочек и нажмем кнопочку "обновить" он должен записать содержимое текстареи в тотже файл... млин.. вроде просто, но чегото нихрена не выходит..

   
 
 автор: RV   (01.07.2006 в 16:59)   письмо автору
 
   для: CrazyAngel   (01.07.2006 в 16:49)
 


<?php
$file 
file($file);
$str "";
foreach (
$file as $key => $val) {
    
$str .= $val "\n";
}
echo 
$str;
?> 

   
 
 автор: CrazyAngel   (01.07.2006 в 16:49)   письмо автору
 
   для: resett   (01.07.2006 в 16:47)
 

А вообще зачем вам переменная??? мой вариант должен работать без переменной =))

можно еще include использовать =)

   
 
 автор: resett   (01.07.2006 в 16:47)   письмо автору
 
   для: RV   (01.07.2006 в 16:46)
 

Опятьже эта функция даст мне массив! а формат переменной нужен именно такой...

Нука... как результ цикла запихнуть в переменную... а то чегото у меня не получилось((
Обясните..

   
 
 автор: RV   (01.07.2006 в 16:46)   письмо автору
 
   для: resett   (01.07.2006 в 16:42)
 

file()
циклом выводим в переменную а потом выводим переменную

   
 
 автор: resett   (01.07.2006 в 16:42)   письмо автору
 
   для: resett   (01.07.2006 в 16:37)
 

а как убрать в результате размер файла??

<textarea>
<?
$data 
readfile ("file.txt");
echo 
$data;
?>
</textarea>


результат...


<textarea>
asdasdasd
asasdasasaddas
asasddsadadasdsaf
ddfdffdf54</textarea> 


Ну а файл соответственно не содержит цифарку 54...

И причем нельзя просто посчитать размер и потом вырезать его из результата.. именно нужно чтоб мы его не получили, так как название контента в файле может содержать эту цифарку, а скрипт вырежет кусок или даже целую строку названия

ага еще в названии темы написано что мне нужен не просто результат в браузере, а переменная с этим результатом, формата 1str\n2str\n3str

   

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования