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.
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ę
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 |