[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: форматирование содержимого файла
2fed
Помогите пожалуйста!

Как сделать, что бы при определённых условиях содержимое файлов форматировалось и записывалось значение 0?

$date= date("w.H.i.s");
$time= fopen("counter/date.dat");

if($time==$date)
{
//тут то что мне непонятно
}


файлы это:
0.dat
1.dat
2.dat
3.dat
4.dat
5.dat
6.dat



Спустя 19 минут, 20 секунд (2.05.2011 - 19:09) ИНСИ написал(а):
2fed вот, попытался прокомментировать, но если будут вопросы, пиши:

$newValue = '0'; // Новое значение, которое пишется в файл при совпадении
$path = 'counter/'; // путь к папке с файлами, которые надо проверить
$date = date("w.H.i.s"); // тут все ясно :)
$arrFiles = array('0.dat','1.dat','2.dat','3.dat','4.dat','5.dat','6.dat'); // Массив с названиями файлов, которые надо проверить

// Обходим циклом все файлы

foreach($arrFiles as $data) {
$time = file_get_contents($path . $data); // Берем содрежимое файла, одной строкой
if($time == $date) // Если содержимое файла совпадает с нашей датой, то:
file_put_contents($path . $data, $newValue) // Записываем новое значение в файл
}


Спустя 7 минут, 14 секунд (2.05.2011 - 19:16) 2fed написал(а):
хм...спасибо, а вот смотрите, что я тут намудрил) пока ждал ответа... почему-то не работает, не пойму почемк, а ведь интерсно))

<?
$count= (int)file_get_contents ("counter/all.dat");
$count++;
$countf= fopen("counter/all.dat", "r+");
flock($countf,2);
fputs($countf, $count);
fclose($countf);
echo "<font color='gray'>Site was watched: $countf times</font>";
echo '<br>';


$date= date("w.H.i.s");
$time= file_get_contents ("counter/date.dat");
if($time==$date)
{
$count2= (int)file_get_contents ("counter/0.dat");
$count2= $count2 * 0;
$countf2= fopen("counter/0.dat", "r+");
flock($countf2,2);
fputs($countf2, $count);
fclose($countf2);

$count3= (int)file_get_contents ("counter/1.dat");
$count3= $count3 * 0;
$countf3= fopen("counter/1.dat", "r+");
flock($countf3,2);
fputs($countf3, $count);
fclose($countf3);

$count2= (int)file_get_contents ("counter/2.dat");
$count2= $count2 * 0;
$countf2= fopen("counter/2.dat", "r+");
flock($countf2,2);
fputs($countf2, $count);
fclose($countf2);

$count4= (int)file_get_contents ("counter/3.dat");
$count4= $count2 * 0;
$countf4= fopen("counter/3.dat", "r+");
flock($countf4,2);
fputs($countf4, $count);
fclose($countf4);

$count5= (int)file_get_contents ("counter/4.dat");
$count5= $count2 * 0;
$countf5= fopen("counter/4.dat", "r+");
flock($countf5,2);
fputs($countf5, $count);
fclose($countf5);

$count6= (int)file_get_contents ("counter/5.dat");
$count6= $count2 * 0;
$countf6= fopen("counter/5.dat", "r+");
flock($countf6,2);
fputs($countf6, $count);
fclose($countf6);

$count7= (int)file_get_contents ("counter/6.dat");
$count7= $count2 * 0;
$countf7= fopen("counter/6.dat", "r+");
flock($countf7,2);
fputs($countf7, $count);
fclose($countf7);
}


$date8= date("w");
$count8= (int)file_get_contents ("counter/$date2.dat");
$count8++;
$countf8= fopen("counter/$date2.dat", "r+");
flock($countf8,2);
fputs($countf8, $count);
fclose($countf8);

echo "<font color='gray'>Today site was watched: $countf2 times</font>";
?>


Вот что у нас прописывается в лог файле

[02-May-2011 20:13:36] PHP Warning: file_get_contents(counter/.dat) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: No such file or directory in /home/h/hacknet.h19.ru/WWW/counter.php on line 68
[02-May-2011 20:13:36] PHP Warning: fopen(counter/.dat) [<a href='function.fopen'>function.fopen</a>]: failed to open stream: No such file or directory in /home/h/hacknet.h19.ru/WWW/counter.php on line 70
[02-May-2011 20:13:36] PHP Warning: flock() expects parameter 1 to be resource, boolean given in /home/h/hacknet.h19.ru/WWW/counter.php on line 71
[02-May-2011 20:13:36] PHP Warning: fputs(): supplied argument is not a valid stream resource in /home/h/hacknet.h19.ru/WWW/counter.php on line 72
[02-May-2011 20:13:36] PHP Warning: fclose(): supplied argument is not a valid stream resource in /home/h/hacknet.h19.ru/WWW/counter.php on line 73

Спустя 5 минут, 39 секунд (2.05.2011 - 19:22) ИНСИ написал(а):
2fed я даже не стал смотреть твой вариант smile.gif Я тебе дал рабочий код, его используй. Свой код просто забудь smile.gif

Спустя 5 минут, 16 секунд (2.05.2011 - 19:27) 2fed написал(а):
velbox ща буду редактировать)

посмотри плиз вот это:

<?
$count= (int)file_get_contents ("counter/all.dat");
$count++;
$countf= fopen("counter/all.dat", "r+");
flock($countf,2);
fputs($countf, $count);
fclose($countf);
echo "<font color='gray'>Site was watched: $countf times</font>";
echo '<br>';

$date2= date("w");
$count9= (int)file_get_contents ("counter/$date2.dat");
$count9++;
$countf9= fopen("counter/$date2.dat", "r+");
flock($countf9,2);
fputs($countf9, $count9);
fclose($countf9);

echo "<font color='gray'>Today site was watched: $countf2 times</font>";
?>

Спустя 3 минуты, 54 секунды (2.05.2011 - 19:31) 2fed написал(а):
velbox я в php ещё совсем новичёк, смотри

if($time == $date)  //разве тут не нужно "}"
file_put_contents($path . $data, $newValue)// а тут ";"
}


а?)
Быстрый ответ:

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