Obsługa i funkcje plików PHP().

Co to jest plik?

Plik to po prostu zasób służący do przechowywania informacji na komputerze.

Pliki służą zazwyczaj do przechowywania informacji takich jak:

  • Ustawienia konfiguracyjne programu
  • Proste dane, takie jak nazwiska kontaktów i numery telefonów.
  • Obrazy, obrazy, zdjęcia itp.

Obsługa formatów plików PHP

Funkcje plików PHP obsługują szeroką gamę formatów plików, w tym:

  • Plik.txt
  • Plik.log
  • Rozszerzenie_pliku, tj. plik.xyz
  • Plik.csv
  • Plik.gif, plik.jpg itp
  • Pliki zapewniają trwałe, ekonomiczne rozwiązanie do przechowywania prostych danych w porównaniu z bazami danych, które wymagają innego oprogramowania i umiejętności do zarządzania systemami DBMS.
  • Chcesz przechowywać proste dane, takie jak logi serwera, w celu późniejszego pobrania i analizy
  • Chcesz zapisać ustawienia programu, np. program.ini

Plik PHP() Funkcja

PHP zapewnia wygodny sposób pracy z plikami dzięki bogatej kolekcji wbudowanych funkcji.

Operasystemy tingowe, np Windows i MAC OS nie rozróżniają wielkości liter Linux or Unix Systemy operacyjne rozróżniają wielkość liter.

Przyjęcie konwersji nazewnictwa, takiej jak małe litery, tylko w przypadku nazewnictwa plików, jest dobrą praktyką zapewniającą maksymalną kompatybilność między platformami.

Przyjrzyjmy się teraz niektórym z najczęściej używanych funkcji plików PHP.

PHP file_exists() Funkcja

Ta funkcja służy do określenia, czy plik istnieje, czy nie.

  • Przydaje się, gdy chcemy wiedzieć, czy plik istnieje, czy nie, przed jego przetworzeniem.
  • Możesz skorzystać z tej funkcji również podczas tworzenia nowego pliku i chcesz mieć pewność, że plik nie istnieje już na serwerze.

Funkcja file_exist ma następującą składnię.

<?php
file_exists($filename); 
?>

TUTAJ,

  • „file_exists()” to funkcja PHP, która zwraca wartość true, jeśli plik istnieje, i false, jeśli nie istnieje.
  • „$nazwa_pliku” to ścieżka i nazwa pliku, który ma zostać sprawdzony

Poniższy kod wykorzystuje funkcję file_exists w celu ustalenia, czy plik my_settings.txt istnieje.

<?php
if (file_exists('my_settings.txt'))
 {    
        echo 'file found!';
 } 
else
 {     
        echo 'my_settings.txt does not exist';
  } 
?>

Zapisz powyższy kod w pliku o nazwie file_function.php Zakładając, że zapisałeś plik w folderze phptuts w htdocs, otwórz adres URL http://localhost/phptuts/file_function.php w Twojej przeglądarce Otrzymasz następujące wyniki.

PHP file_exists() Funkcja

Funkcja fopen() PHP

Funkcja fopen służy do otwierania plików. Ma następującą składnię

<?php
fopen($file_name,$mode,$use_include_path,$context);
 ?>

TUTAJ,

  • „fopen” to funkcja otwierania pliku PHP
  • „$nazwa_pliku” to nazwa pliku, który ma zostać otwarty
  • „$mode” to tryb, w którym plik powinien zostać otwarty, tryby przedstawia poniższa tabela
Moda Opis
r • Przeczytaj plik od początku.
• Zwraca wartość false, jeśli plik nie istnieje.
• Tylko czytać
r+ • Przeczytaj plik od początku
• Zwraca wartość false, jeśli plik nie istnieje.
• Czytaj i pisz
w • Zapisz do pliku na początku
• Obetnij plik do zerowej długości
• Jeśli plik nie istnieje, spróbuj go utworzyć.
• Tylko pisz
w+ • Zapis do pliku na początku, obcięcie pliku do zerowej długości
• Jeśli plik nie istnieje, spróbuj go utworzyć.
• Czytaj i pisz
a • Dołącz do pliku na końcu
• Jeśli plik nie istnieje, spróbuj go utworzyć.
• Tylko pisz
a+ • PHP dołącz do pliku na końcu
• Jeśli plik nie istnieje, spróbuj go utworzyć
• Czytaj i pisz
  • „$use_include_path” jest opcjonalne, domyślnie jest to false, jeśli jest ustawione na true, funkcja przeszukuje również ścieżkę dołączenia.
  • „$context” jest opcjonalne i można go użyć do określenia obsługi kontekstu.

Funkcja fwrite() PHP

Do zapisywania plików służy funkcja fwrite.

Ma następującą składnię

<?php
fwrite($handle, $string, $length);
?>

TUTAJ,

  • „fwrite” to funkcja PHP służąca do zapisywania plików
  • „$handle” to zasób wskaźnika pliku
  • „$string” to dane, które mają zostać zapisane w pliku.
  • „$length” jest opcjonalne i można go użyć do określenia maksymalnej długości pliku.

PHP fclose() Funkcja

Funkcja fclose() służy do zamykania pliku w php, który jest już otwarty

Ma następującą składnię.

<?php
fclose($handle); 
?>

TUTAJ,

  • „fclose” to Funkcja PHP do zamykania otwartego pliku
  • „$handle” to zasób wskaźnika pliku.

Przyjrzyjmy się teraz przykładowi, który tworzy plik my_settings.txt.

Będziemy używać następujących funkcji.

  • Otwórz
  • Napisz
  • fzamknij

Poniższy kod „create_my_settings_file.php” implementuje powyższy przykład.

Otwórz plik
<?php 

$fh = fopen("my_settings.txt", 'w')

or

die("Failed to create file"); ?>
Zamykanie pliku
<?php

fclose($fh);

?>
Utwórz plik
<?php 

$fh = fopen("my_settings.txt", 'w') or die("Failed to create file"); 

$text = <<<_END 

localhost;root;pwd1234;my_database 

_END; 

fwrite($fh, $text) or die("Could not write to file"); 

fclose($fh); 

echo "File 'my_settings.txt' written successfully"; ?>    

Testowanie kodu

Otwórz adres URL http://localhost/phptuts/create_my_settings.php w przeglądarce.

Otrzymasz następującą stronę

Funkcja fclose w PHP

Uwaga: jeśli Twój dysk jest zapełniony lub nie masz uprawnień do zapisu plików, pojawi się komunikat o błędzie.

Wróć do adresu URL http://localhost/phptuts/file_function.php .

Jakie wyniki otrzymujesz?

PHP fgets() Funkcja

Funkcja fgets służy do odczytywania plików php wiersz po wierszu. Ma następującą podstawową składnię. fgets($handle); TUTAJ,

  • „$fgets” to funkcja PHP służąca do odczytywania linii plików
  • „$handle” to zasób wskaźnika pliku.

Przyjrzyjmy się teraz przykładowi, który odczytuje plik my_settings.txt przy użyciu funkcji fopen i fgets.

Poniższy kod read_my_settings.php implementuje powyższy przykład.

<?php
$fh = fopen("my_settings.txt", 'r') or die("File does not exist or you lack permission to open it");
$line = fgets($fh);
echo $line; fclose($fh);
 ?>

TUTAJ,

  • Funkcja „fopen” zwraca wskaźnik do pliku określonego w ścieżce pliku
  • W przypadku wystąpienia błędu wywoływana jest funkcja „die()”. Wyświetla komunikat i umożliwia wykonanie skryptu

Funkcja kopiowania() PHP

Funkcja PHP copy służy do kopiowania plików. Ma następującą podstawową składnię. copy($file,$copied_file); TUTAJ,

  • „$file” określa ścieżkę i nazwę pliku do skopiowania.
  • „copied_file” określa ścieżkę i nazwę kopiowanego pliku

Poniższy kod ilustruje implementację

<?php
copy('my_settings.txt', 'my_settings_backup.txt') or die("Could not copy file");
echo "File successfully copied to 'my_settings_backup.txt'"; 
?>

Usuwanie pliku

Do usunięcia pliku służy funkcja unlink. Poniższy kod ilustruje implementację.

<?php
if (!unlink('my_settings_backup.txt'))
{
     echo "Could not delete file";
 }
else
{
     echo "File 'my_settings_backup.txt' successfully deleted"; 
}
 ?>

PHP file_get_contents() Funkcja

Do odczytania całej zawartości pliku służy funkcja file_get_contents.

Poniższy kod ilustruje implementację.

Różnica pomiędzy file_get_contents i fgets polega na tym, że file_get_contents zwraca dane pliku jako ciąg znaków, podczas gdy fgets czyta plik linia po linii.

<?php
echo "<pre>"; // Enables display of line feeds
echo file_get_contents("my_settings.txt");
echo "</pre>"; // Terminates pre tag
?>

Podsumowanie

  • Plik jest zasobem służącym do przechowywania danych
  • PHP posiada bogatą kolekcję wbudowanych funkcji ułatwiających pracę z plikami.
  • Typowe funkcje plików obejmują fopen, fclose, file_get_contents
  • Poniższa tabela przedstawia podsumowanie omawianych funkcji
Funkcjonować Opis
Plik istnieje Służy do określenia, czy plik istnieje, czy nie
otwarty Służy do otwierania pliku. Zwraca wskaźnik do otwartego pliku
napisz Używany do zapisu do plików
fzamknij Służy do otwierania zamkniętych plików
fgets Służy do odczytu pliku linia po linii
kopia Służy do kopiowania istniejącego pliku
odczepić Służy do usuwania istniejącego pliku
file_get_contents Służy do zwracania zawartości pliku w postaci ciągu znaków