PHP File() Handling & Functions

Τι είναι ένα Αρχείο;

Ένα αρχείο είναι απλώς ένας πόρος για την αποθήκευση πληροφοριών σε έναν υπολογιστή.

Τα αρχεία χρησιμοποιούνται συνήθως για την αποθήκευση πληροφοριών όπως:

  • Ρυθμίσεις διαμόρφωσης ενός προγράμματος
  • Απλά δεδομένα, όπως ονόματα επαφών στο τηλέφωνο numbers.
  • Εικόνες, Εικόνες, Φωτογραφίες κ.λπ.

Υποστήριξη μορφών αρχείων PHP

Οι λειτουργίες αρχείων PHP υποστηρίζουν ένα ευρύ φάσμα μορφών αρχείων που περιλαμβάνουν:

  • File.txt
  • File.log
  • File.custom_extension δηλαδή file.xyz
  • File.csv
  • File.gif, file.jpg κ.λπ
  • Τα αρχεία παρέχουν μια μόνιμη οικονομικά αποδοτική λύση αποθήκευσης δεδομένων για απλά δεδομένα σε σύγκριση με βάσεις δεδομένων που απαιτούν άλλο λογισμικό και δεξιότητες για τη διαχείριση συστημάτων DBMS.
  • Θέλετε να αποθηκεύσετε απλά δεδομένα, όπως αρχεία καταγραφής διακομιστή για later ανάκτηση και ανάλυση
  • Θέλετε να αποθηκεύσετε τις ρυθμίσεις του προγράμματος, π.χ. program.ini

Λειτουργία αρχείου PHP ().

Η PHP παρέχει έναν βολικό τρόπο εργασίας με αρχεία μέσω της πλούσιας συλλογής ενσωματωμένων λειτουργιών της.

Operaσυστήματα ting όπως Windows και τα MAC OS δεν κάνουν διάκριση πεζών-κεφαλαίων ενώ Linux or Unix operaΤα συστήματα ting κάνουν διάκριση πεζών-κεφαλαίων.

Η υιοθέτηση μιας μετατροπής ονομασίας όπως πεζά γράμματα μόνο για την ονομασία αρχείων είναι μια καλή πρακτική που διασφαλίζει τη μέγιστη συμβατότητα μεταξύ πλατφορμών.

Ας δούμε τώρα μερικές από τις πιο συχνά χρησιμοποιούμενες συναρτήσεις αρχείων PHP.

Συνάρτηση PHP file_exists().

Αυτή η συνάρτηση χρησιμοποιείται για να προσδιορίσει εάν ένα αρχείο υπάρχει ή όχι.

  • Είναι χρήσιμο όταν θέλουμε να μάθουμε εάν ένα αρχείο υπάρχει ή όχι πριν το επεξεργαστούμε.
  • Μπορείτε επίσης να χρησιμοποιήσετε αυτήν τη λειτουργία όταν δημιουργείτε ένα νέο αρχείο και θέλετε να βεβαιωθείτε ότι το αρχείο δεν υπάρχει ήδη στον διακομιστή.

Η συνάρτηση file_exist έχει το ακόλουθοwing σύνταξη.

<?php
file_exists($filename); 
?>

ΕΔΩ,

  • Το “file_exists()” είναι η συνάρτηση PHP που επιστρέφει true αν το αρχείο υπάρχει και false αν δεν υπάρχει.
  • Το "$file_name" είναι η διαδρομή και το όνομα του αρχείου που θα ελεγχθεί

Ο παρακάτω κώδικας χρησιμοποιεί τη συνάρτηση file_exists για να προσδιορίσει εάν υπάρχει το αρχείο my_settings.txt.

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

Αποθηκεύστε τον παραπάνω κώδικα σε ένα αρχείο με το όνομα file_function.php Υποθέτοντας ότι αποθηκεύσατε το αρχείο στον φάκελο phptuts στο htdocs, ανοίξτε τη διεύθυνση URL http://localhost/phptuts/file_function.php στο πρόγραμμα περιήγησής σας Θα λάβετε το following αποτελέσματα.

Συνάρτηση PHP file_exists().

Συνάρτηση PHP fopen().

Η λειτουργία fopen χρησιμοποιείται για το άνοιγμα αρχείων. Έχει το ακόλουθοwing σύνταξη

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

ΕΔΩ,

  • Το "fopen" είναι η λειτουργία ανοιχτού αρχείου PHP
  • "$file_name" είναι το όνομα του αρχείου που θα ανοίξει
  • Το "$mode" είναι ο τρόπος με τον οποίο πρέπει να ανοίξει το αρχείο, ο παρακάτω πίνακας δείχνει τις λειτουργίες
Τρόπος Περιγραφή
r • Διαβάστε το αρχείο από την αρχή.
• Επιστρέφει το false εάν το αρχείο δεν υπάρχει.
• Μόνο για ανάγνωση
r+ • Διαβάστε το αρχείο από την αρχή
• Επιστρέφει το false εάν το αρχείο δεν υπάρχει.
• Διάβασε και γράψε
w • Εγγραφή στο αρχείο στην αρχή
• περικοπή αρχείου σε μηδενικό μήκος
• Εάν το αρχείο δεν υπάρχει, προσπαθήστε να το δημιουργήσετε.
• Γράψτε μόνο
w+ • Εγγραφή στο αρχείο στην αρχή, περικοπή αρχείου σε μηδενικό μήκος
• Εάν το αρχείο δεν υπάρχει, προσπαθήστε να το δημιουργήσετε.
• Διάβασε και γράψε
a • Προσθήκη στο αρχείο στο τέλος
• Εάν το αρχείο δεν υπάρχει, προσπαθήστε να το δημιουργήσετε.
• Γράψτε μόνο
a+ • Php προσάρτηση στο αρχείο στο τέλος
• Εάν το αρχείο δεν υπάρχει, προσπαθήστε να το δημιουργήσετε
• Διάβασε και γράψε
  • Το "$use_include_path" είναι προαιρετικό, η προεπιλογή είναι false, εάν οριστεί σε true, η συνάρτηση αναζητά και στη διαδρομή συμπερίληψης.
  • Το "$context" είναι προαιρετικό, μπορεί να χρησιμοποιηθεί για τον καθορισμό της υποστήριξης περιβάλλοντος.

Συνάρτηση PHP fwrite().

Η συνάρτηση fwrite χρησιμοποιείται για την εγγραφή αρχείων.

Έχει το ακόλουθοwing σύνταξη

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

ΕΔΩ,

  • Το "fwrite" είναι η συνάρτηση PHP για εγγραφή σε αρχεία
  • Το "$handle" είναι ο πόρος δείκτη αρχείου
  • Το "$string" είναι τα δεδομένα που πρέπει να εγγραφούν στο αρχείο.
  • Το "$length" είναι προαιρετικό, μπορεί να χρησιμοποιηθεί για τον καθορισμό του μέγιστου μήκους αρχείου.

Συνάρτηση PHP fclose().

Η συνάρτηση fclose() χρησιμοποιείται για να κλείσει ένα αρχείο σε php που είναι ήδη ανοιχτό

Έχει το ακόλουθοwing σύνταξη.

<?php
fclose($handle); 
?>

ΕΔΩ,

  • "fclose" είναι το Λειτουργία PHP για το κλείσιμο ενός ανοιχτού αρχείου
  • Το "$handle" είναι ο πόρος δείκτη αρχείου.

Ας δούμε τώρα ένα παράδειγμα που δημιουργεί το my_settings.txt.

Θα χρησιμοποιήσουμε το following λειτουργίες.

  • Φόπεν
  • Fwrite
  • fclose

Ο κώδικας παρακάτω "create_my_settings_file.php" υλοποιεί το παραπάνω παράδειγμα.

Ανοίξτε το αρχείο
<?php 

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

or

die("Failed to create file"); ?>
Κλείσιμο αρχείου
<?php

fclose($fh);

?>
Δημιουργία αρχείου
<?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"; ?>    

Δοκιμή του κώδικα

Ανοίξτε τη διεύθυνση URL http://localhost/phptuts/create_my_settings.php στο πρόγραμμα περιήγησής σας.

Θα πάρετε το following σελίδα

Λειτουργία fclose PHP

Σημείωση: εάν ο δίσκος σας είναι γεμάτος ή δεν έχετε άδεια εγγραφής αρχείων, θα λάβετε ένα μήνυμα σφάλματος.

Επιστρέψτε στη διεύθυνση URL http://localhost/phptuts/file_function.php .

Τι αποτελέσματα παίρνετε;

Συνάρτηση PHP fgets().

Η συνάρτηση fgets χρησιμοποιείται για την ανάγνωση αρχείων php γραμμή προς γραμμή. Έχει το ακόλουθοwing βασική σύνταξη. fgets($handle); ΕΔΩ,

  • Το "$fgets" είναι η συνάρτηση PHP για την ανάγνωση γραμμών αρχείων
  • Το "$handle" είναι ο πόρος δείκτη αρχείου.

Ας δούμε τώρα ένα παράδειγμα που διαβάζει το αρχείο my_settings.txt χρησιμοποιώντας τις συναρτήσεις fopen και fgets.

Ο παρακάτω κώδικας read_my_settings.php υλοποιεί το παραπάνω παράδειγμα.

<?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);
 ?>

ΕΔΩ,

  • Η λειτουργία "fopen" επιστρέφει τον δείκτη στο αρχείο που καθορίζεται στη διαδρομή του αρχείου
  • Η συνάρτηση "die()" καλείται εάν παρουσιαστεί σφάλμα. Εμφανίζει ένα μήνυμα και υπάρχει η εκτέλεση του σεναρίου

Συνάρτηση PHP copy().

Η λειτουργία αντιγραφής PHP χρησιμοποιείται για την αντιγραφή αρχείων. Έχει το ακόλουθοwing βασική σύνταξη. copy($file,$copied_file); ΕΔΩ,

  • Το "$file" καθορίζει τη διαδρομή αρχείου και το όνομα του αρχείου που θα αντιγραφεί.
  • Το "copied_file" καθόρισε τη διαδρομή και το όνομα του αντιγραμμένου αρχείου

Ο παρακάτω κώδικας απεικονίζει την υλοποίηση

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

Διαγραφή αρχείου

Η λειτουργία αποσύνδεσης χρησιμοποιείται για τη διαγραφή του αρχείου. Ο παρακάτω κώδικας απεικονίζει την υλοποίηση.

<?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().

Η συνάρτηση file_get_contents χρησιμοποιείται για την ανάγνωση ολόκληρου του περιεχομένου του αρχείου.

Ο παρακάτω κώδικας απεικονίζει την υλοποίηση.

Η διαφορά μεταξύ file_get_contents και fgets είναι ότι το file_get_contents επιστρέφει τα δεδομένα του αρχείου ως συμβολοσειρά ενώ το fgets διαβάζει το αρχείο γραμμή προς γραμμή.

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

Χαρακτηριστικά

  • Ένα αρχείο είναι ένας πόρος για την αποθήκευση δεδομένων
  • PHP έχει μια πλούσια συλλογή από ενσωματωμένες λειτουργίες που απλοποιούν την εργασία με αρχεία.
  • Οι κοινές λειτουργίες αρχείων περιλαμβάνουν fopen, fclose, file_get_contents
  • Ο παρακάτω πίνακας δείχνει μια περίληψη των λειτουργιών που καλύπτονται
Λειτουργία Περιγραφή
Το αρχείο υπάρχει Χρησιμοποιείται για να προσδιορίσει εάν ένα αρχείο υπάρχει ή όχι
fopen Χρησιμοποιείται για το άνοιγμα ενός αρχείου. Επιστρέφει έναν δείκτη στο ανοιχτό αρχείο
fwrite Χρησιμοποιείται για εγγραφή σε αρχεία
fclose Χρησιμοποιείται για το άνοιγμα κλειστών αρχείων
fgets Χρησιμοποιείται για την ανάγνωση ενός αρχείου γραμμή προς γραμμή
αντίγραφο Χρησιμοποιείται για την αντιγραφή υπάρχοντος αρχείου
αποσυνδέστε Χρησιμοποιείται για τη διαγραφή ενός υπάρχοντος αρχείου
file_get_contents Χρησιμοποιείται για την επιστροφή των περιεχομένων ενός αρχείου ως συμβολοσειρά