Βίντεο: Technology Stacks - Computer Science for Business Leaders 2016 2024
Πολλές εφαρμογές απαιτούν μακροπρόθεσμη αποθήκευση πληροφοριών. Στις δέσμες ενεργειών PHP, μπορείτε να κάνετε διαθέσιμες πληροφορίες σε συνεδρίες - τις χρονικές περιόδους που ξοδεύουν οι χρήστες στον ιστότοπό σας - χρησιμοποιώντας μεθόδους όπως λειτουργίες συνεδρίας PHP και υποβάλλοντας φόρμες. Ωστόσο, τελικά θα πρέπει να αποθηκεύσετε πληροφορίες για χρήση αύριο ή επόμενη εβδομάδα. Μπορείτε να το αποθηκεύσετε σε ένα cookie που ορίσατε να διαρκέσει μετά την ολοκλήρωση της περιόδου σύνδεσης, αλλά οι πληροφορίες είναι ευάλωτες. Δεν είναι υπό τον έλεγχό σας. Ο χρήστης μπορεί να διαγράψει ή να αλλάξει τις πληροφορίες ανά πάσα στιγμή ή μπορεί να αρνηθεί την αποδοχή του cookie. Για να είναι διαθέσιμες και σταθερές, οι πληροφορίες πρέπει να αποθηκεύονται κάπου ασφαλείς, όπου κανείς δεν μπορεί να έχει πρόσβαση ή να τις παραβιάζει. Οι πληροφορίες πρέπει να αποθηκεύονται στο διακομιστή.
Οι πληροφορίες μπορούν να αποθηκευτούν στον διακομιστή σε επίπεδη αρχεία ή σε βάσεις δεδομένων. Τα επίπεδη αρχεία είναι αρχεία κειμένου που είναι αποθηκευμένα στο σύστημα αρχείων του υπολογιστή. Οι άνθρωποι μπορούν να διαβάσουν επίπεδη αρχεία χρησιμοποιώντας τις εντολές του λειτουργικού συστήματος που εμφανίζουν αρχεία, όπως cat σε Linux και Unix. Μπορείτε να αποκτήσετε πρόσβαση και να επεξεργαστείτε αυτά τα αρχεία χρησιμοποιώντας οποιοδήποτε πρόγραμμα επεξεργασίας αρχείων κειμένου, όπως το Notepad ή το vi. Οι πληροφορίες στο επίπεδο αρχείο αποθηκεύονται ως συμβολοσειρές και το σενάριο PHP που ανακτά τα δεδομένα χρειάζεται να γνωρίζει πώς αποθηκεύονται τα δεδομένα. Για παράδειγμα, για να ανακτήσετε ένα όνομα πελάτη από ένα αρχείο, το σενάριο PHP πρέπει να γνωρίζει ότι το όνομα του πελάτη αποθηκεύεται στους 20 πρώτους χαρακτήρες κάθε γραμμής.
Χρησιμοποιώντας μια βάση δεδομένων για αποθήκευση δεδομένων απαιτείται να εγκαταστήσετε και να μάθετε να χρησιμοποιείτε λογισμικό βάσης δεδομένων, όπως MySQL ή Oracle. Τα δεδομένα αποθηκεύονται σε αρχεία που έχουν δημιουργηθεί από το λογισμικό βάσης δεδομένων και έχουν πρόσβαση μόνο στο λογισμικό βάσης δεδομένων. Οι βάσεις δεδομένων μπορούν να αποθηκεύουν πολύ σύνθετες πληροφορίες που μπορείτε να ανακτήσετε εύκολα. Δεν χρειάζεται να γνωρίζετε πώς αποθηκεύονται τα δεδομένα, πώς να αλληλεπιδράτε με το λογισμικό βάσης δεδομένων. Για παράδειγμα, για να ανακτήσετε ένα όνομα πελάτη, το script PHP πρέπει να γνωρίζει μόνο πώς να πει το λογισμικό βάσης δεδομένων ότι θέλει το όνομα του πελάτη, χρησιμοποιώντας μια τυπική γλώσσα επικοινωνίας που ονομάζεται SQL. Το λογισμικό βάσης δεδομένων χειρίζεται την αποθήκευση και παραδίδει τα δεδομένα, χωρίς το script να χρειάζεται να γνωρίζει ακριβώς πού ή πώς αποθηκεύεται το όνομα του πελάτη.
Τα επίπεδη αρχεία έχουν ορισμένα πλεονεκτήματα σε σχέση με τις βάσεις δεδομένων:
- Διαθέσιμο και ευέλικτο: Μπορείτε να δημιουργήσετε και να αποθηκεύσετε δεδομένα στο σύστημα αρχείων οποιουδήποτε λειτουργικού συστήματος. Δεν χρειάζεται να εγκαταστήσετε επιπλέον λογισμικό. Επιπλέον, δεδομένα κειμένου αποθηκευμένα σε επίπεδη αρχεία μπορούν να διαβαστούν από μια ποικιλία προγραμμάτων λογισμικού, όπως επεξεργαστές κειμένου ή υπολογιστικά φύλλα.
- Εύκολο στη χρήση: Δεν χρειάζεται να κάνετε κάποια πρόσθετη προετοιμασία, όπως εγκατάσταση λογισμικού βάσης δεδομένων, σχεδίαση βάσης δεδομένων, δημιουργία βάσης δεδομένων κ.ο.κ. Απλά δημιουργήστε το αρχείο και αποθηκεύστε τα δεδομένα με τις δηλώσεις στη δέσμη ενεργειών PHP.
- Μικρότερα: Τα επίπεδη αρχεία αποθηκεύουν δεδομένα χρησιμοποιώντας λιγότερο χώρο στο δίσκο από τις βάσεις δεδομένων.
Ένα επίπεδο αρχείο είναι γρήγορο και εύκολο και απαιτεί λιγότερο χώρο από μια βάση δεδομένων. Είναι ιδανικό για γρήγορη αποθήκευση μικρών ποσών πληροφοριών, όπως μια απλή λίστα ή μια μικρή πληροφορία. Τα επίπεδη αρχεία είναι ιδιαίτερα χρήσιμα για τη διάθεση πληροφοριών σε άλλο λογισμικό, όπως ένα πρόγραμμα επεξεργασίας ή ένα υπολογιστικό φύλλο. Τα επίπεδη αρχεία μπορούν να εξεταστούν από οποιονδήποτε έχει πρόσβαση στον κατάλογο του υπολογιστή όπου είναι αποθηκευμένα, έτσι ώστε να είναι χρήσιμα όταν οι πληροφορίες πρέπει να διατίθενται σε άλλα άτομα.
Οι βάσεις δεδομένων έχουν και κάποια πλεονεκτήματα:
- Ασφάλεια: Μια βάση δεδομένων παρέχει ένα δικό της επίπεδο ασφάλειας, εκτός από την ασφάλεια που παρέχεται από το λειτουργικό σύστημα. Μια βάση δεδομένων προστατεύει τα δεδομένα από εξωτερική διείσδυση καλύτερα από ένα επίπεδο αρχείο.
- Προσβασιμότητα δεδομένων: Μπορείτε να αποθηκεύσετε δεδομένα σε μια βάση δεδομένων χρησιμοποιώντας μια πολύ περίπλοκη δομή δεδομένων, καθορίζοντας τους τύπους δεδομένων και τις σχέσεις μεταξύ των δεδομένων. Η οργάνωση των δεδομένων καθιστά εύκολη την αναζήτηση των δεδομένων και την ανάκτηση όσων χρειάζεστε.
- Ικανότητα χειρισμού πολλών χρηστών: Όταν πολλοί χρήστες αποθηκεύουν ή έχουν πρόσβαση σε δεδομένα σε ένα μόνο αρχείο, όπως ένα αρχείο που περιέχει ονόματα και διευθύνσεις, μια βάση δεδομένων διασφαλίζει ότι οι χρήστες παίρνουν τη σειρά τους με το αρχείο για να αποφύγουν την αντικατάσταση των δεδομένων του άλλου.
Οι βάσεις δεδομένων χρειάζονται περισσότερη προσπάθεια εκκίνησης και χρησιμοποιούν περισσότερο χώρο από ένα επίπεδο αρχείο, αλλά είναι πολύ πιο κατάλληλες για τη διαχείριση πολύπλοκων πληροφοριών. Η βάση δεδομένων χειρίζεται την εσωτερική οργάνωση των δεδομένων, καθιστώντας την ανάκτηση δεδομένων πολύ απλούστερη. Μια βάση δεδομένων παρέχει περισσότερη ασφάλεια, καθιστώντας την πιο κατάλληλη για ευαίσθητες, ιδιωτικές πληροφορίες. Οι βάσεις δεδομένων μπορούν να χειρίζονται πιο εύκολα και αποτελεσματικά την υψηλή επισκεψιμότητα όταν πολλοί χρήστες μπορούν να προσπαθήσουν να έχουν πρόσβαση στα δεδομένα σχεδόν ταυτόχρονα.
Στην PHP 5, το SQLite, μια επέκταση για αποθήκευση δεδομένων που συνδυάζει τα κύρια πλεονεκτήματα των επίπεδων αρχείων και βάσεων δεδομένων, συμπεριλαμβάνεται από προεπιλογή. Το SQLite αποθηκεύει τα δεδομένα σε ένα επίπεδο αρχείο, οπότε δεν χρειάζεται να εγκαταστήσετε λογισμικό βάσης δεδομένων, αλλά αποθηκεύετε τα δεδομένα χρησιμοποιώντας την τυπική γλώσσα επικοινωνίας της SQL. Το SQLite είναι μια γρήγορη επιλογή για την αποθήκευση και την ανάκτηση μικρών ποσοτήτων δεδομένων σε ένα επίπεδο αρχείο χρησιμοποιώντας SQL. Το SQLite δεν είναι μια καλή επιλογή για πραγματικά τεράστιες, πολύπλοκες βάσεις δεδομένων.