|
PHP: основы основ
Xakep, номер #048, стр. 048-090-4 w - только запись. Существующее содержимое файла уничтожается. Если файл не существует, то он создается. w+ - аналогично w, но также возможно чтение файла. a - только запись, данные дописываются в конец файла, если файл не существует, то он создается. a+ - аналогично a, но также возможно чтение файла. Общий принцип работы счетчика: открывается файл count.txt, оттуда читается некоторая цифра, значение которой увеличивается на единичку, после чего записывается обратно в файл. В зависимости от параметра $mode сценарий либо просто выводит на экран записанное в файл значение, либо производит замену всех десятичных чисел на html-теги, которые вставляют определенные для каждой из цифр изображения. В данном случае используется цикл for от нуля до девятки, заменяющий при помощи функции ereg_replace('что_заменяем', 'чем_заменяем', где_заменяем) каждую десятичную цифру в строке тегом, вставляющим соответствующее цифре изображение. То есть, если была строка "103", то при первой итерации цикла ноль будет заменен на тег Вот, пожалуй, и все. Поменьше тебе Parse Error'ов :). Если что - пиши, обязательно отвечу. //Тег, обозначающий, что ниже идет PHP-код $counter="count.txt"; //Переменная с именем файла $mode=graph; //переменная режима работы счетчика. Второе возможное значение - text $file=fopen($counter, "r"); //Открываем файл с параметром r - только чтение if(!$file) // функция fopen возвращает булевское значение, в зависимости от того, удалось открыть указанный файл или нет { echo "[Произошла ошибка]"; //Выводим сообщение об ошибке } else { $num=fread($file, 10); //Читаем первые 10 разрядов из открытого файла, этого более чем достаточно fclose($file); //закрываем файл } $num++; //увеличиваем прочитанное значение на единицу $no_graph=$num; //Присваиваем полученное значение переменной для использования в текстовом режиме $file=fopen($counter, "w"); //открываем файл на запись fputs($file, $num); //пишем в файл новое значение if($mode=="graph") //проверяем параметр режима, если он графический... { for($i=0; $i<=9; $i++) { $num=ereg_replace("$i", " } echo "$num"; //Выводим все теги } else { //А если не графический... echo "Вы $no_graph посетитель этой страницы"; //просто выводим текстовое значение количества посетителей } // после закачивания скрипта на сервер обязательно надо поменять права доступа к нему, чтобы он запустился. Например, chmod 755, что даст владельцу файла полные права, а группе и прочим пользователям только на выполнение и чтение. // Также следует создать файл count.txt и, записав в него нолик, закачать в один каталог со скриптом |