PHP File_Get_Contents -funksjonen

PHP File_Get_Contents -funksjonen
PHP inneholder mange innebygde funksjoner for å lese innholdet i en eksisterende ikke-tom fil. File_get_contents () er en av de innebygde funksjonene til PHP for å lese hele innholdet i en eksisterende fil som en streng. Syntaksen til denne funksjonen er gitt nedenfor.

Syntaks:

Denne funksjonen kan ta fem argumenter. Den returnerer hele eller spesielle innholdet i en fil hvis filen eksisterer ellers returnerer falsk.

String | false file_get_contents (String $ filnavn [, bool $ use_include_path = falsk [, ressurs $ kontekst [, int $ offset = 0 [, int $ maxlen]]]])
  • Det første argumentet er obligatorisk og det tar filnavnet som vil bli lest av denne funksjonen.
  • Det andre argumentet er valgfritt, og standardverdien for dette argumentet er falsk. Det verdien av dette argumentet er satt til sant, så blir filen søkt i banen som brukes I include_path verdien av PHP.Inn jeg fil.
  • Det tredje argumentet er valgfritt som brukes til å spesifisere gyldig kontekstressurs eller null.
  • Det fjerde argumentet er valgfritt som brukes til å angi startposisjonen for å lese filinnholdet.
  • Det femte argumentet er valgfritt som brukes til å angi den maksimale lengden på data som vil bli lest fra filen.

Ulike bruksområder av File_Get_Contents () -funksjonen

Opprett eller velg en eksisterende fil for lesing ved å bruke File_Get_Contents () -funksjonen. Her, en tekstfil som heter OS.tekst har blitt opprettet med følgende innhold som skal brukes i eksemplene på denne opplæringen.

OS.tekst

Windows 11
Windows 10
Windows 8
Windows 7
Ubuntu 20.10
Ubuntu 20.04
Ubuntu 19
Ubuntu 18
Ubuntu 17
MacOS Monterey 12.0.1
OS X El Capitan 10.11.6
Mac OS X Puma 10.1.5

Eksempel 1: Les hele filen

Lag en PHP -fil med følgende skript for å lese innholdet i en eksisterende fil. De Filen eksisterer() Funksjonen har blitt brukt for å sjekke at filen eksisterer eller ikke før du leser. De is_readable () Funksjonen har blitt brukt for å sjekke lesetillatelsen til filen. Hvis filen eksisterer og filen har lesetillatelse, vil innholdet i filen bli skrevet ut ved å bruke file_get_contents () funksjon.

// angi et filnavn
$ filnavn = 'OS.tekst';
// Sjekk filen eksisterer eller ikke
hvis (!file_exists ($ filnavn))
Echo '-filen eksisterer ikke.';

// Sjekk filen har lesetillatelse eller ikke
eller hvis (!is_readable ($ filnavn))
Echo '-filen har ingen lesetillatelse.';

// Skriv ut hele innholdet i filen
ellers
ekko file_get_contents ($ filnavn);
?>

Produksjon:

Følgende utdata vises som utfører skriptet ovenfor. Her er den nye linjen utelatt.

Eksempel-2: Les filen delvis

Lag en PHP -fil med følgende skript for å lese en bestemt del av en fil i stedet for å lese hele innholdet ved å bruke file_get_contents () funksjon. Her vil filnavnet bli hentet fra URL -spørringsparameteren. Deretter vil eksistensen og lese tillatelse fra filen bli sjekket. Den spesielle delen av filen vil lese basert på den positive startposisjonen og lengden og den negative startposisjonen og lengden.

// sjekk filnavnet er gitt i URL -spørringsparameteren eller ikke
if (isset ($ _ få ['fn']))

// angi et filnavn
$ filnavn = $ _get ['fn'];
// Sjekk filen eksisterer eller ikke
hvis (!file_exists ($ filnavn))
Echo '-filen eksisterer ikke.';

// Sjekk filen har lesetillatelse eller ikke
eller hvis (!is_readable ($ filnavn))
Echo '-filen har ingen lesetillatelse.';

ellers

// Skriv ut den bestemte delen av filen basert på positiv startposisjon
ekko "Utgang for den positive startposisjonen:
"".file_get_contents ($ filnavn, null, null, 5, 30);
// Skriv ut den bestemte delen av filen basert på negativ startposisjon
ekko "
Utgang for den negative startposisjonen:
"".file_get_contents ($ filnavn, null, null, -24,
20);


ellers
// Skriv ut melding hvis filnavnet ikke er funnet
ekko "filnavn har ikke gitt.""
?>

Produksjon:

Følgende utdata vises som utfører skriptet ovenfor uten å gi filnavnet i nettadressen.

Følgende utdata vises på utførelsen av skriptet ovenfor hvis filnavnet, OS.tekst er gitt i URL -parameteren som er opprettet før.

Følgende utdata vises på utførelsen av skriptet ovenfor hvis det er gitt noen ikke-eksistensfil i URL-parameteren.

Eksempel-3: Les filen ved hjelp av parameteren Inkludert

Verdien av inkluderer_path Parameter må settes i PHP.Inn jeg fil. Banen til denne filen på Ubuntu er '/etc/php/8.0/apache2/php.Inn jeg'. Åpne filen og angi banen til filen der filen blir lest. Det andre argumentet til file_get_contents () kreves å stille ekte eller File_use_include_path å lese filen fra banen definert i inkluderer_stien parameter.

// angi et filnavn
$ filnavn = 'kunder.tekst';
// Sett den andre argumentverdien til True
ekko "Utgang-1:
"".file_get_contents ($ filnavn, true);
// Angi den andre argumentverdien til file_use_include_path
ekko "
Utgang-2:
"".file_get_contents ($ filnavn, file_use_include_path);
?>

Produksjon:

Følgende utdata vises som utfører skriptet ovenfor.

Eksempel-5: Les innholdet i en URL ved hjelp av Curl

Du må installere PHP Curl -biblioteket for å lese innholdet i en URL -adresse. Kjør følgende kommando for å installere PHP Curl -modulen.

$ sudo apt install libapache2-mod-php php-curl

Åpne PHP.Inn jeg fil og fjern semikolonet (;) fra krøllforlengelsen for å aktivere den.

Opprett en PHP -fil med følgende skript for å lese innholdet i en URL -adresse som vil bli oppgitt i URL -spørringsparameteren som er navngitt URL. Hvis URL -adressen eksisterer, vil innholdet i URL -adressen bli skrevet ut.

// Sjekk URL -adressen er oppgitt i URL -spørringsparameteren eller ikke
if (isset ($ _ få ['url']))

// Angi URL -verdien
$ url = $ _get ['url'];
// Bruk Curl -biblioteket for å sjekke eksistensen av nettadressen
$ curl = curl_init ($ url);
curl_setopt ($ curl, curlopt_nobody, true);
if (curl_exec ($ curl) !== falsk)
// Les siden til URL -adressen
ekko file_get_contents ($ url);
ellers
ekko "URL eksisterer ikke.";

ellers
ekko "URL -verdi har ikke gitt.";
?>

Produksjon:

Følgende utdata vises utførelse av skriptet ovenfor hvis ingen URL -adresse er oppgitt.

Følgende utdata vil vises på utførelsen av skriptet ovenfor hvis den gyldige URL -adressen, 'https: // linuxhint.com/bash_comments/' er gitt.

Eksempel-6: Les innholdet i nettadressen ved hjelp av strømkontekst

Opprett en PHP -fil med følgende skript for å lese innholdet i en gyldig URL -adresse ved hjelp av Stream_Context_Create () og File_Get_Contents () -funksjonene. Her har de andre og tredje argumentene til File_Get_Contents () brukt til å lese innholdet i 'http: // www.eksempel.com/'.

// Lag strøm for å lese innholdet i nettadressen
$ alternativer = matrise (
'http' => matrise (
'Metode' => "Få",
'header' => "Aksepterespråk: en \ r \ n"
)
);
// Angi kontekstverdien
$ context = stream_context_create ($ alternativer);
// Les innholdet i nettadressen ved å bruke HTTP -overskriftene
ekko file_get_contents ('http: // www.eksempel.com/', falsk, $ kontekst);
?>

Produksjon:

Følgende utdata vises som utfører skriptet ovenfor.

Konklusjon

De forskjellige måtene å lese innholdet i en fil fra forskjellige steder og URL -adresser ved å bruke File_Get_Contents () har vist i denne opplæringen. Jeg håper PHP -brukeren vil kunne bruke denne funksjonen riktig etter å ha lest denne opplæringen.