Obsługa plików w PHP

PHP thumbnail

Pliki są fundamentalnym elementem przechowywania danych w aplikacjach internetowych. PHP oferuje bogatą gamę funkcji umożliwiających zarządzanie plikami, od prostych operacji, takich jak tworzenie, czytanie, zapisywanie i usuwanie, aż po zaawansowane działania związane z przesyłaniem plików i operacjami na ich zawartości.

Tworzenie pliku

Tworzenie nowego pliku w PHP jest proste:

$file = fopen("nowy_plik.txt", "w") or die("Nie można utworzyć pliku!");
$text = "To jest przykładowy tekst, który zostanie zapisany w pliku.";
fwrite($file, $text);
fclose($file);
echo "Plik został utworzony pomyślnie.";

Odczyt pliku

Czytanie zawartości pliku może być realizowane za pomocą fread() lub file_get_contents():

$file = fopen("plik.txt", "r") or die("Nie można otworzyć pliku!");
$content = fread($file, filesize("plik.txt"));
fclose($file);
echo $content;

lub:

$content = file_get_contents("plik.txt");
echo $content;

Zapisywanie do istniejącego pliku

Możemy zmieniać zawartość istniejącego pliku lub dodawać do niego treść:

$file = fopen("istniejacy_plik.txt", "a") or die("Nie można otworzyć pliku!");
$text = "Nowa treść, która zostanie dodana do istniejącego pliku.";
fwrite($file, $text);
fclose($file);
echo "Zawartość pliku została zaktualizowana.";

Usuwanie pliku

Usuwanie pliku za pomocą funkcji unlink():

if (!unlink("do_usuniecia.txt")) {
  echo "Błąd podczas usuwania pliku.";
} else {
  echo "Plik został usunięty.";
}

Przesyłanie plików przez formularz

Obsługa przesyłania plików przez formularz HTML i zapisywanie ich na serwerze:

<form action="upload.php" method="post" enctype="multipart/form-data">
  Wybierz plik do przesłania:
  <input type="file" name="fileToUpload" id="fileToUpload">
  <input type="submit" value="Upload" name="submit">
</form>

Plik PHP upload.php obsługujący przesyłane pliki:

$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);

if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
  echo "Plik ". htmlspecialchars( basename( $_FILES["fileToUpload"]["name"])). " został przesłany.";
} else {
  echo "Wystąpił błąd podczas przesyłania pliku.";
}

Modyfikowanie i przeszukiwanie plików

PHP oferuje funkcje pozwalające na modyfikowanie i przeszukiwanie plików, na przykład funkcję file() do odczytywania pliku do tablicy wierszy.

$lines = file("plik.txt");
foreach ($lines as $line) {
  echo $line . "<br>";
}

Kopiowanie plików

Możemy kopiować pliki za pomocą funkcji copy():

if (!copy("stary_plik.txt", "nowy_plik.txt")) {
  echo "Błąd podczas kopiowania pliku.";
} else {
  echo "Plik został skopiowany.";
}

Podsumowanie

Obsługa plików w PHP jest wszechstronna i daje szerokie możliwości manipulowania danymi na serwerze. Od podstawowych operacji tworzenia, czytania i zapisywania, po zaawansowane działania, takie jak przesyłanie plików i manipulacje zawartością pliku – funkcje PHP stanowią solidny fundament dla aplikacji internetowych, które zarządzają plikami. Zaprezentowane przykłady są świetnym punktem wyjścia dla zrozumienia i wykorzystania tych funkcji w praktyce.

To top