SlideShare a Scribd company logo
Работа с файлове в PHP 
Тема 8
Съдържание 
1. Отваряне на файл 
2. Прочитане на файла 
3. Добавяне на съдържание във 
файл 
4. Изтриване на файлове 
5. Изпращане на файл 
6. Създаване и изтриване на 
директории
Увод 
 PHP предлага множество удобства при работа с 
файлове, без значение дали те се намират на 
локалния сървър или на отдалечен домейн; 
 Работата с файлове в PHP е облекченa и бързa; 
 Ще бъдат представени основните функции и 
конструкции за извършване на най-необходимите 
операции с файловата система на сървъра, както 
и за работа с отдалечени файлове; 
 PHP предлага богати възможности и когато се 
почувствате комфортно с основните неща, 
разгледайте официалната PHP документация.
1. Отваряне на файл 
•Както виждаме, функцията fopen() приема два 
параметъра - името на файла и "състоянието" 
в което ще се отвори той. 
•Можем да зададем пълния или относителния 
път до файла, ако се намира на локалната 
система или неговото URL, ако е на отдалечен 
сървър в Интернет. 
•Използвайки параметъра "r" за да укажем 
състоянието на файла при отваряне 
показахме, че искаме да го отворим само за 
прочитане. 
•Ето какви са вариантите за този параметър : 
--next 
 Преди да направим каквото и да било със 
съдържанието на един файл, трябва да го 
отворим. Можем да направим това с функцията 
fopen(); 
 ../uroci/t8/ ex81.php 
<?php 
$filename ='file1.txt'; 
$fp=fopen($filename,"rb") or exit("Unable to open file!"); 
?>
•Kак действат файловите функции. 
•При fopen($изпълнението filename,"си, fopen() r") 
връща така 
наречения файлов идентификатор (в случая $fp), 
който след това използваме винаги, когато 
боравим с отворения файл. 
•Освен това, имаме и показалец, от който зависи 
къде точно в отворения файл ще се направят 
промените или какво точно ще прочетем. 
•Например ако отворим файла в който искаме да 
добавим няколко реда текст чрез параметър "а+", 
то добавянето ще става в края на 
съществуващата информация. 
•Но ако използваме "w+', то добавянето ще е в 
самото начало, преди данните, които вече 
съществуват. 
 'r' - отваря файла само за четене, като поставя показалеца в 
началото му; 
 'r+' - отваря файла за четене и записване, като поставя показалеца в 
началото му; 
 'w' - отваря файла само за писане, като поставя показалеца в 
началото му. Ако такъв файл съществува, цялото му съдържание ще 
бъде унищожено, ако не съществува - парсерът ще опита да го 
създаде. 
 'w+' - отваря файла за четене и писане, като поставя показалеца в 
началото му. Ако такъв файл съществува, цялото му съдържание ще 
бъде унищожено, ако не съществува - парсерът ще опита да го 
създаде. 
 'a' - отваря файла само за писане, като поставя показалеца в края на 
файла. Ако не съществува такъв файл ще се опита да го създаде. 
 'a+' - отваря файла за четене и писане, като поставя показалеца в 
края на файла. Ако не съществува такъв файл ще се опита да го 
създаде.
•Ще подчертаем, че отворените с функцията 
fopen() файлове трябва да се затварят! 
•За целта се използва функцията fclose (), която 
приема като параметър идентификатора на 
файла, който искаме да затворим. 
•Функцията файла 2. filesize () връща големината в Прочитане байтове. 
на файла 
на 
•Ако по някаква причина не успее да се изпълни, 
връща FALSE. 
•Файлът, чиято големина ни интересува, трябва 
да се намира във файловата система, защото 
функцията не работи с URL. 
•След като вече знаем колко е голям файлът, 
можем да го прочетем (целия) с функцията 
fread(). 
•Тя приема два аргумента - файловия 
идентификатор, върнат от fopen(), и големината 
на парчето информация, което искаме да 
прочетем. 
•В случая искаме да прочетем целия файл, 
затова като втори аргумент подаваме изхода от 
функцията filesize(). 
•Често ще ни се налага да четем различни, по- 
малки фрагменти от файловете. 
<?php 
$filename = 'file1.txt'; 
$fp = fopen($filename, "r"); 
$string = fread($fp,filesize($filename)); 
fclose($fp); 
echo $string; 
?>
file.txt : 
 Нека във 
file.txt има: 
ред1 
ред2 
ред3 
ред4 
ред5 
 След прочитането му, 
променливата $string ще 
съдържа : 
 "ред1nред2nред3nред4nред5". 
 С "n" обозначаваме нов ред, 
което означава, че когато 
съдържанието се изведе на 
екрана, то ще съответства 
напълно на съдържанието на 
прочетения файл, със запазени 
нови редове в текста.
•Функцията fwrite () записва определени данни във 
файл. Тя приема три входни аргумента, като 
единият не е задължителен. 
3. Добавяне на съдържание 
във файл 
•Функцията връща количеството записана 
информация, •fwrite ( файлов а идентификатор, ако по някаква низ причина [, дължина]) 
не успее 
да се изпълни, връща FALSE. 
•Ако пропуснем третия аргумент, ще бъдат 
записани всички данни. 
•Файловият идентификатор се получава чрез ф 
ункцията fopen (), 
•низът е съдържанието, което искаме да запишем 
във файла, 
•а дължината указва какво количество байтове 
искаме от това съдържание да запишем. 
 PHP ни предоставя няколко възможности за добавяне 
на съдържание във файл, в зависимост от конкретната 
необходимост. 
 Нека първо е създаден файл, който да съдържа 
изречението "Това е нов файл". 
../uroci/t8/ ex82.php 
<php? 
$fp=fopen('file3.txt','w+') or exit("Unable to open file!"); 
//записваме изречението във файла 
fwrite($fp,"Това е нов файл"); 
fclose($fp); 
?>
Функцията -fputs(), 
 След като вече имаме създаден файл, можем 
да продължим да го пълним с информация. 
 За целта ще използваме функцията fputs(), за 
да запишем данните, започвайки от текущото 
положение на показалеца. 
 Функцията е идентична на fwrite () и приема 
същите три входни параметъра. 
 fputs ( файлов идентификатор, низ [, дължина])
 Нека да добавим още няколко реда текст в създадения 
преди малко test.txt. 
../uroci/t8/ ex83.php 
<php? 
$fp=fopen('file3.txt','a') or exit("Unable to open file!"); 
//добавяме два нови реда и затваряме файла 
$string = "nТова е втори ред на файлаnТова е трети 
ред на файла"; 
$write = fputs($fp, $string); 
//close($fp); 
?>?>
Пример за съхраняване на 
информация 
 Нека сега направим малък брояч, който ще 
показва на посетителя кое по ред посещение 
регистира страницата. 
 За целта ще използваме текстов файл 
(broyach.txt), в който ще съхраняваме 
текущата стойност на брояча. 
 Важно условие е съръвът да има права за 
писане в директорията, където ще се намира 
файла, за да може да го създаде и обновява. 
 Виж пример--../uroci/t8/ ex84.php 
 // Функцията sprintf() се използва за извеждане на 
екрана на форматирани низове
4 .Изтриване на файлове 
 След като си свършим работата с test.txt, 
добра идея е да го изтирем, а не да 
задръстваме сървъра с излишни файлове. 
 Ще използваме функцията unlink(). 
 unlink ("име на файла") 
 Както и при добавянето на информация, за 
да изтрием файла трябва да имаме права за 
писане в съответния файл и директорията, в 
която се намира той.
Функцията връща TRUE при успешно 
изтриване и FALSE при провал. 
В примера използвахме този факт, за 
да проверим дали нашият test.txt е 
бил премахнат или не. 
Пример-unlink () 
 Изтриването на примерния файл би изглеждало така: 
 ../uroci/t8/ ex85.php 
<php? 
$filelocation="file3.txt"; 
if (!unlink ($filelocation)) { 
echo "Файлът не може да бъде изтрит! Моля, убедете 
се, че сървърът има право да пише в съответната 
директория!"; 
}else { 
echo "Файлът бе изтрит успешно!"; 
} 
?>
<?php 
$img_file="w3php.gif"; 
$filelocation="broyach2.txt"; 
if (!file_exists($filelocation)) { 
$newfile = fopen($filelocation,"w+"); 
$content=1; 
fwrite($newfile, $content); 
fclose($newfile); 
} 
$newfile = fopen($filelocation,"r"); 
$content = fread($newfile, 
filesize($filelocation)); 
fclose($newfile); 
$newfile = fopen($filelocation,"w+"); 
$content++; 
fwrite($newfile, $content); 
fclose($newfile); 
$fd=fopen($img_file,'r'); 
fpassthru($fd); 
5. Изпращане на файл 
 Една от най-често употребяваните функции за 
работа с файлове в PHP е fpassthru (). 
 Тя прочита съдържанието на отворен файл и го 
изпраща направо към изхода на приложението 
(например към браузъра). 
 При грешка връща FALSE. 
 Приема само един аргумент - файловият 
идентификатор, върнат от fopen(). 
 Ще демонстрираме действието й, като 
променим брояча от горния пример. 
 Сега той само ще записва, но няма да показва на 
посетителите броя на посещенията. А ще бъде 
включен в страницата ?> 
чрез изображение.
6. Създаване и изтриване на 
директории 
 За да създадем нова, използваме mkdir () : 
 mkdir ("път", "състояние") 
 Функцията приема два входни параметъра - името на директорията, 
която искаме да създадем (с относителния или пълен път до нея) и 
състоянието (разрешенията) за достъп и писане на файлове в нея. 
 Например, ако искаме да създадем директория "access" във вече 
съществуващата "/home/mydir/logs", можем да напишем следното : 
 mkdir ("/home/mydir/logs/access", 0700) 
 Съдържанието на така създадената директория ще бъде достъпно 
за четене и писане от скриптовете, действащи от името на 
потребителя, който я е създал. 
 Тъй като използвахме осмична бройна система за указване на 
правата, ги записахме с 0 в началото.
Премахването на 
директория 
 Премахването на директорията става с 
функцията rmdir (), която приема само един 
аргумент - името на директорията, която 
искаме да изтрием. 
 rmdir ("/home/mydir/logs/access"); 
 Този ред ще премахне създадената по-горе 
директория, но само, ако е празна и разбира 
се, ако сървърът има права за писане в нея. 
 Връща TRUE ако успее и FALSE ако се 
провали.

More Related Content

Viewers also liked

2011 advanced global mobile trends
2011 advanced global mobile trends2011 advanced global mobile trends
2011 advanced global mobile trends
Pim Piepers
 
Kasa Yönetimi - Login Entegre ERP
Kasa Yönetimi - Login Entegre ERPKasa Yönetimi - Login Entegre ERP
Kasa Yönetimi - Login Entegre ERP
Login Yazılım
 
AS Media Studies Evaluation Presentation
AS Media Studies Evaluation PresentationAS Media Studies Evaluation Presentation
AS Media Studies Evaluation Presentation
Harriet Hagen
 
Relais chateau seneca 2014 1
Relais chateau seneca 2014 1Relais chateau seneca 2014 1
Relais chateau seneca 2014 1
ilovecuriosity
 
iPpinsk.by - Медиакит
iPpinsk.by - МедиакитiPpinsk.by - Медиакит
iPpinsk.by - Медиакит
Leonid Losich
 
Odwaga
OdwagaOdwaga
Obszary najczęściej atakowane
Obszary najczęściej atakowaneObszary najczęściej atakowane
Obszary najczęściej atakowane
Andrzej Golonka
 
Цунамі (укр.)
Цунамі (укр.) Цунамі (укр.)
Цунамі (укр.)
Liza Kharchenko
 
Best Sports Handicappers
Best Sports HandicappersBest Sports Handicappers
Best Sports Handicappers
Joe Duffy
 
Tugas DKKMN
Tugas DKKMNTugas DKKMN
Tugas DKKMN
Franklyn Tambajong
 

Viewers also liked (13)

2011 advanced global mobile trends
2011 advanced global mobile trends2011 advanced global mobile trends
2011 advanced global mobile trends
 
Kasa Yönetimi - Login Entegre ERP
Kasa Yönetimi - Login Entegre ERPKasa Yönetimi - Login Entegre ERP
Kasa Yönetimi - Login Entegre ERP
 
AS Media Studies Evaluation Presentation
AS Media Studies Evaluation PresentationAS Media Studies Evaluation Presentation
AS Media Studies Evaluation Presentation
 
Relais chateau seneca 2014 1
Relais chateau seneca 2014 1Relais chateau seneca 2014 1
Relais chateau seneca 2014 1
 
iPpinsk.by - Медиакит
iPpinsk.by - МедиакитiPpinsk.by - Медиакит
iPpinsk.by - Медиакит
 
Odwaga
OdwagaOdwaga
Odwaga
 
Obszary najczęściej atakowane
Obszary najczęściej atakowaneObszary najczęściej atakowane
Obszary najczęściej atakowane
 
Цунамі (укр.)
Цунамі (укр.) Цунамі (укр.)
Цунамі (укр.)
 
Parte ii
Parte iiParte ii
Parte ii
 
1236
12361236
1236
 
fromXplana
fromXplanafromXplana
fromXplana
 
Best Sports Handicappers
Best Sports HandicappersBest Sports Handicappers
Best Sports Handicappers
 
Tugas DKKMN
Tugas DKKMNTugas DKKMN
Tugas DKKMN
 

Similar to B8 t8 files

B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
Asiya Petrova
 
B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
Asiya Petrova
 
Php security
Php securityPhp security
Php securityphristov
 
5 lesson 5
5 lesson 55 lesson 5
5 lesson 5
Petya Delcheva
 
B3 t3 cookies
B3 t3 cookiesB3 t3 cookies
B3 t3 cookies
Asiya Petrova
 
B2 t2 variables
B2 t2 variablesB2 t2 variables
B2 t2 variables
Asiya Petrova
 
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 BulgariaЗащита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
Mihail Semerdzhiev
 
Drupal security lecture
Drupal security lectureDrupal security lecture
Drupal security lecture
slide9991
 
Python choreographe NAOqi Framework
Python choreographe NAOqi FrameworkPython choreographe NAOqi Framework
Python choreographe NAOqi Framework
Atelier for robotics
 
Защита при създаване на PHP-приложения в Интернет
Защита при създаване на PHP-приложения в ИнтернетЗащита при създаване на PHP-приложения в Интернет
Защита при създаване на PHP-приложения в Интернетeismail
 
операционни системи
операционни системиоперационни системи
операционни системиmtrad
 
Kursova 116679
Kursova 116679Kursova 116679
Kursova 116679
superazo
 
B1 t1 php_basics
B1 t1 php_basicsB1 t1 php_basics
B1 t1 php_basics
Asiya Petrova
 
Word Press за маниаци
Word Press за маниациWord Press за маниаци
Word Press за маниаци
Kaloyan Tsvetkov
 
Security Log Management
Security Log  ManagementSecurity Log  Management

Similar to B8 t8 files (20)

B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
 
B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
 
B4 t4 include_files
B4 t4 include_filesB4 t4 include_files
B4 t4 include_files
 
Php security
Php securityPhp security
Php security
 
5 lesson 5
5 lesson 55 lesson 5
5 lesson 5
 
B3 t3 cookies
B3 t3 cookiesB3 t3 cookies
B3 t3 cookies
 
B3 t3 cookies
B3 t3 cookiesB3 t3 cookies
B3 t3 cookies
 
B2 t2 variables
B2 t2 variablesB2 t2 variables
B2 t2 variables
 
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 BulgariaЗащита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
Защита и сигурност на Joomla! сайт - Joomla! Day 2013 Bulgaria
 
Drupal security lecture
Drupal security lectureDrupal security lecture
Drupal security lecture
 
Python choreographe NAOqi Framework
Python choreographe NAOqi FrameworkPython choreographe NAOqi Framework
Python choreographe NAOqi Framework
 
Uroc2 6klas
Uroc2 6klasUroc2 6klas
Uroc2 6klas
 
Защита при създаване на PHP-приложения в Интернет
Защита при създаване на PHP-приложения в ИнтернетЗащита при създаване на PHP-приложения в Интернет
Защита при създаване на PHP-приложения в Интернет
 
операционни системи
операционни системиоперационни системи
операционни системи
 
Spodelqne na fail
Spodelqne na failSpodelqne na fail
Spodelqne na fail
 
Kursova 116679
Kursova 116679Kursova 116679
Kursova 116679
 
B1 t1 php_basics
B1 t1 php_basicsB1 t1 php_basics
B1 t1 php_basics
 
B1 t1 php_basics
B1 t1 php_basicsB1 t1 php_basics
B1 t1 php_basics
 
Word Press за маниаци
Word Press за маниациWord Press за маниаци
Word Press за маниаци
 
Security Log Management
Security Log  ManagementSecurity Log  Management
Security Log Management
 

More from Asiya Petrova

B7 t7 arrays
B7 t7 arraysB7 t7 arrays
B7 t7 arrays
Asiya Petrova
 
B6 t6 errors
B6 t6 errorsB6 t6 errors
B6 t6 errors
Asiya Petrova
 
B5 t5 if_else_for_while
B5 t5 if_else_for_whileB5 t5 if_else_for_while
B5 t5 if_else_for_while
Asiya Petrova
 
B9 t9 db_my_sql
B9 t9 db_my_sqlB9 t9 db_my_sql
B9 t9 db_my_sql
Asiya Petrova
 
A1 install xampp
A1 install xamppA1 install xampp
A1 install xampp
Asiya Petrova
 
B5 t5 if_else_for_while
B5 t5 if_else_for_whileB5 t5 if_else_for_while
B5 t5 if_else_for_whileAsiya Petrova
 

More from Asiya Petrova (10)

B7 t7 arrays
B7 t7 arraysB7 t7 arrays
B7 t7 arrays
 
B6 t6 errors
B6 t6 errorsB6 t6 errors
B6 t6 errors
 
B5 t5 if_else_for_while
B5 t5 if_else_for_whileB5 t5 if_else_for_while
B5 t5 if_else_for_while
 
B9 t9 db_my_sql
B9 t9 db_my_sqlB9 t9 db_my_sql
B9 t9 db_my_sql
 
A1 install xampp
A1 install xamppA1 install xampp
A1 install xampp
 
B7 t7 arrays
B7 t7 arraysB7 t7 arrays
B7 t7 arrays
 
B8 t8 files
B8 t8 filesB8 t8 files
B8 t8 files
 
B6 t6 errors
B6 t6 errorsB6 t6 errors
B6 t6 errors
 
B5 t5 if_else_for_while
B5 t5 if_else_for_whileB5 t5 if_else_for_while
B5 t5 if_else_for_while
 
A1 install xampp
A1 install xamppA1 install xampp
A1 install xampp
 

B8 t8 files

  • 1. Работа с файлове в PHP Тема 8
  • 2. Съдържание 1. Отваряне на файл 2. Прочитане на файла 3. Добавяне на съдържание във файл 4. Изтриване на файлове 5. Изпращане на файл 6. Създаване и изтриване на директории
  • 3. Увод  PHP предлага множество удобства при работа с файлове, без значение дали те се намират на локалния сървър или на отдалечен домейн;  Работата с файлове в PHP е облекченa и бързa;  Ще бъдат представени основните функции и конструкции за извършване на най-необходимите операции с файловата система на сървъра, както и за работа с отдалечени файлове;  PHP предлага богати възможности и когато се почувствате комфортно с основните неща, разгледайте официалната PHP документация.
  • 4. 1. Отваряне на файл •Както виждаме, функцията fopen() приема два параметъра - името на файла и "състоянието" в което ще се отвори той. •Можем да зададем пълния или относителния път до файла, ако се намира на локалната система или неговото URL, ако е на отдалечен сървър в Интернет. •Използвайки параметъра "r" за да укажем състоянието на файла при отваряне показахме, че искаме да го отворим само за прочитане. •Ето какви са вариантите за този параметър : --next  Преди да направим каквото и да било със съдържанието на един файл, трябва да го отворим. Можем да направим това с функцията fopen();  ../uroci/t8/ ex81.php <?php $filename ='file1.txt'; $fp=fopen($filename,"rb") or exit("Unable to open file!"); ?>
  • 5. •Kак действат файловите функции. •При fopen($изпълнението filename,"си, fopen() r") връща така наречения файлов идентификатор (в случая $fp), който след това използваме винаги, когато боравим с отворения файл. •Освен това, имаме и показалец, от който зависи къде точно в отворения файл ще се направят промените или какво точно ще прочетем. •Например ако отворим файла в който искаме да добавим няколко реда текст чрез параметър "а+", то добавянето ще става в края на съществуващата информация. •Но ако използваме "w+', то добавянето ще е в самото начало, преди данните, които вече съществуват.  'r' - отваря файла само за четене, като поставя показалеца в началото му;  'r+' - отваря файла за четене и записване, като поставя показалеца в началото му;  'w' - отваря файла само за писане, като поставя показалеца в началото му. Ако такъв файл съществува, цялото му съдържание ще бъде унищожено, ако не съществува - парсерът ще опита да го създаде.  'w+' - отваря файла за четене и писане, като поставя показалеца в началото му. Ако такъв файл съществува, цялото му съдържание ще бъде унищожено, ако не съществува - парсерът ще опита да го създаде.  'a' - отваря файла само за писане, като поставя показалеца в края на файла. Ако не съществува такъв файл ще се опита да го създаде.  'a+' - отваря файла за четене и писане, като поставя показалеца в края на файла. Ако не съществува такъв файл ще се опита да го създаде.
  • 6. •Ще подчертаем, че отворените с функцията fopen() файлове трябва да се затварят! •За целта се използва функцията fclose (), която приема като параметър идентификатора на файла, който искаме да затворим. •Функцията файла 2. filesize () връща големината в Прочитане байтове. на файла на •Ако по някаква причина не успее да се изпълни, връща FALSE. •Файлът, чиято големина ни интересува, трябва да се намира във файловата система, защото функцията не работи с URL. •След като вече знаем колко е голям файлът, можем да го прочетем (целия) с функцията fread(). •Тя приема два аргумента - файловия идентификатор, върнат от fopen(), и големината на парчето информация, което искаме да прочетем. •В случая искаме да прочетем целия файл, затова като втори аргумент подаваме изхода от функцията filesize(). •Често ще ни се налага да четем различни, по- малки фрагменти от файловете. <?php $filename = 'file1.txt'; $fp = fopen($filename, "r"); $string = fread($fp,filesize($filename)); fclose($fp); echo $string; ?>
  • 7. file.txt :  Нека във file.txt има: ред1 ред2 ред3 ред4 ред5  След прочитането му, променливата $string ще съдържа :  "ред1nред2nред3nред4nред5".  С "n" обозначаваме нов ред, което означава, че когато съдържанието се изведе на екрана, то ще съответства напълно на съдържанието на прочетения файл, със запазени нови редове в текста.
  • 8. •Функцията fwrite () записва определени данни във файл. Тя приема три входни аргумента, като единият не е задължителен. 3. Добавяне на съдържание във файл •Функцията връща количеството записана информация, •fwrite ( файлов а идентификатор, ако по някаква низ причина [, дължина]) не успее да се изпълни, връща FALSE. •Ако пропуснем третия аргумент, ще бъдат записани всички данни. •Файловият идентификатор се получава чрез ф ункцията fopen (), •низът е съдържанието, което искаме да запишем във файла, •а дължината указва какво количество байтове искаме от това съдържание да запишем.  PHP ни предоставя няколко възможности за добавяне на съдържание във файл, в зависимост от конкретната необходимост.  Нека първо е създаден файл, който да съдържа изречението "Това е нов файл". ../uroci/t8/ ex82.php <php? $fp=fopen('file3.txt','w+') or exit("Unable to open file!"); //записваме изречението във файла fwrite($fp,"Това е нов файл"); fclose($fp); ?>
  • 9. Функцията -fputs(),  След като вече имаме създаден файл, можем да продължим да го пълним с информация.  За целта ще използваме функцията fputs(), за да запишем данните, започвайки от текущото положение на показалеца.  Функцията е идентична на fwrite () и приема същите три входни параметъра.  fputs ( файлов идентификатор, низ [, дължина])
  • 10.  Нека да добавим още няколко реда текст в създадения преди малко test.txt. ../uroci/t8/ ex83.php <php? $fp=fopen('file3.txt','a') or exit("Unable to open file!"); //добавяме два нови реда и затваряме файла $string = "nТова е втори ред на файлаnТова е трети ред на файла"; $write = fputs($fp, $string); //close($fp); ?>?>
  • 11. Пример за съхраняване на информация  Нека сега направим малък брояч, който ще показва на посетителя кое по ред посещение регистира страницата.  За целта ще използваме текстов файл (broyach.txt), в който ще съхраняваме текущата стойност на брояча.  Важно условие е съръвът да има права за писане в директорията, където ще се намира файла, за да може да го създаде и обновява.  Виж пример--../uroci/t8/ ex84.php  // Функцията sprintf() се използва за извеждане на екрана на форматирани низове
  • 12. 4 .Изтриване на файлове  След като си свършим работата с test.txt, добра идея е да го изтирем, а не да задръстваме сървъра с излишни файлове.  Ще използваме функцията unlink().  unlink ("име на файла")  Както и при добавянето на информация, за да изтрием файла трябва да имаме права за писане в съответния файл и директорията, в която се намира той.
  • 13. Функцията връща TRUE при успешно изтриване и FALSE при провал. В примера използвахме този факт, за да проверим дали нашият test.txt е бил премахнат или не. Пример-unlink ()  Изтриването на примерния файл би изглеждало така:  ../uroci/t8/ ex85.php <php? $filelocation="file3.txt"; if (!unlink ($filelocation)) { echo "Файлът не може да бъде изтрит! Моля, убедете се, че сървърът има право да пише в съответната директория!"; }else { echo "Файлът бе изтрит успешно!"; } ?>
  • 14. <?php $img_file="w3php.gif"; $filelocation="broyach2.txt"; if (!file_exists($filelocation)) { $newfile = fopen($filelocation,"w+"); $content=1; fwrite($newfile, $content); fclose($newfile); } $newfile = fopen($filelocation,"r"); $content = fread($newfile, filesize($filelocation)); fclose($newfile); $newfile = fopen($filelocation,"w+"); $content++; fwrite($newfile, $content); fclose($newfile); $fd=fopen($img_file,'r'); fpassthru($fd); 5. Изпращане на файл  Една от най-често употребяваните функции за работа с файлове в PHP е fpassthru ().  Тя прочита съдържанието на отворен файл и го изпраща направо към изхода на приложението (например към браузъра).  При грешка връща FALSE.  Приема само един аргумент - файловият идентификатор, върнат от fopen().  Ще демонстрираме действието й, като променим брояча от горния пример.  Сега той само ще записва, но няма да показва на посетителите броя на посещенията. А ще бъде включен в страницата ?> чрез изображение.
  • 15. 6. Създаване и изтриване на директории  За да създадем нова, използваме mkdir () :  mkdir ("път", "състояние")  Функцията приема два входни параметъра - името на директорията, която искаме да създадем (с относителния или пълен път до нея) и състоянието (разрешенията) за достъп и писане на файлове в нея.  Например, ако искаме да създадем директория "access" във вече съществуващата "/home/mydir/logs", можем да напишем следното :  mkdir ("/home/mydir/logs/access", 0700)  Съдържанието на така създадената директория ще бъде достъпно за четене и писане от скриптовете, действащи от името на потребителя, който я е създал.  Тъй като използвахме осмична бройна система за указване на правата, ги записахме с 0 в началото.
  • 16. Премахването на директория  Премахването на директорията става с функцията rmdir (), която приема само един аргумент - името на директорията, която искаме да изтрием.  rmdir ("/home/mydir/logs/access");  Този ред ще премахне създадената по-горе директория, но само, ако е празна и разбира се, ако сървърът има права за писане в нея.  Връща TRUE ако успее и FALSE ако се провали.