17/12/14 12,6Κ

Υπάρχουν τέτοιοι κλάδοι στον προγραμματισμό Ιστού, τα βασικά των οποίων κάθε άτομο που συνδέεται με τον Παγκόσμιο Ιστό πρέπει να γνωρίζει. Επομένως, με τον ένα ή τον άλλο τρόπο, θα πρέπει να μάθετε PHP και MySQL. Και αν δεν το θέλετε, τότε η απληστία θα σας αναγκάσει ούτως ή άλλως:

Γιατί να μάθετε php και MySQL;

Μια τέτοια ερώτηση μπορούν να κάνουν μόνο όσοι δεν είναι καθόλου εξοικειωμένοι με τις ιδιαιτερότητες της κατασκευής ενός διαδικτυακού χώρου και του σύγχρονη βάση. Οποιοδήποτε άτομο με λίγο ή πολύ γνώσεις στον προγραμματισμό θα σας πει ότι αυτοί οι δύο κλάδοι κυριαρχούν επί του παρόντος Παγκόσμιος Ιστός. Και αυτό σημαίνει ότι σχεδόν ολόκληρο το Διαδίκτυο είναι χτισμένο με βάση την PHP και τη MySQL:


Αν και η σημασία της PHP έχει μειωθεί λίγο στην εποχή μας. Και όλα αυτά λόγω του μεγάλου αριθμού κινητήρων που (ειρωνικά) κατασκευάζονται επίσης με βάση αυτή τη γλώσσα.

Στον σύγχρονο κόσμο του Ιστού, οι μηχανές νοούνται ως οποιοδήποτε σύστημα διαχείρισης περιεχομένου (CMS). Τα περισσότερα από αυτά είναι γραμμένα σε PHP και MySQL.

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

Αρχικά, δεν υπάρχουν πολλοί άνθρωποι που έχουν την υπομονή, το χρόνο ή την ενέργεια να μάθουν PHP και MySQL. Ένα άτομο πρέπει να φτάσει σε αυτό μόνος του. Αλλά αυτός που τολμήσει να κατανοήσει αυτούς τους κλάδους θα λάβει:

  • Απαιτούμενο επάγγελμα - οι έξυπνοι προγραμματιστές είχαν πάντα μεγάλη ζήτηση στην αγορά εργασίας. Αλλά ακόμη και άπειροι αρχάριοι με καλή θεωρητική γνώση της PHP και μικρή εμπειρία στον προγραμματισμό Ιστού θα μπορούν να βρουν δουλειά με αξιοπρεπή αμοιβή.
  • Εργασία εξ αποστάσεως - για να κάνετε προγραμματισμό, δεν είναι απαραίτητο να ξυπνάτε νωρίς, να πάτε στη δουλειά και να ακολουθείτε τον κώδικα ενδυμασίας. Όλα αυτά μπορούν να μείνουν πίσω από το κατώφλι και να δημιουργήσουν κώδικα προγραμματισμούκάθεται στο σπίτι με παντόφλες δωματίου.
  • Εξοικονόμηση χρημάτων - εάν είστε ιδιοκτήτης ιστότοπου, τότε σίγουρα γνωρίζετε ότι οι υπηρεσίες επαγγελματιών προγραμματιστών Ιστού είναι ακριβές. Και για έναν αρχάριο στο Διαδίκτυο, κάθε δεκάρα είναι πολύτιμη. ΑυτοεκπαίδευσηΗ MySQL και η PHP θα εξοικονομήσουν χρήματα και θα τα βάλουν σε καλό δρόμο.

Όπως έχει ήδη σημειωθεί, οι περισσότεροι σύγχρονοι κινητήρες βασίζονται στην PHP. Αν και η ανοχή τους στα σφάλματα είναι σε υψηλό επίπεδο, κανείς δεν έχει ακυρώσει την επιρροή του ανθρώπινου παράγοντα. Επομένως, ο κώδικας CMS μερικές φορές συμπεριφέρεται διαφορετικά από τον προγραμματιστή Ιστού.

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

  • Ένα ενδιαφέρον χόμπι - ο προγραμματισμός Ιστού δεν είναι μόνο ένα μέσο για να κερδίσετε χρήματα ή να εξοικονομήσετε χρήματα. Είναι επίσης μια συναρπαστική δραστηριότητα που συνδυάζει τόσο τεχνικό όσο και δημιουργικό στοιχείο.

Η εκμάθηση PHP και MySQL μπορεί να είναι ένα μέσο αυτοέκφρασης για πολλούς.

Τι είναι η PHP

Η PHP είναι μια γλώσσα προγραμματισμού scripting. Χρησιμοποιείται συχνότερα για τη δημιουργία διαδικτυακών εφαρμογών και υπηρεσιών web. Αυτή η γλώσσα υποστηρίζεται από τους περισσότερους κεντρικούς υπολογιστές στο Διαδίκτυο. Στη βάση του, γράφεται το κύριο μέρος των δυναμικών τοποθεσιών.

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


Η δημοτικότητα της PHP οφείλεται στα ακόλουθα χαρακτηριστικά της:
  • Υποστήριξη για τα πιο δημοφιλή DBMS ( Συστήματα Διαχείρισης Βάσεων Δεδομένων);
  • Αυτόματη αποστολή κεφαλίδων HTTP ;
  • Ενσωματωμένη υποστήριξη για εργασία με περιόδους σύνδεσης και cookies.
  • Εργαλεία για εργασία με απομακρυσμένα αρχεία.
  • Υποστήριξη XForm ( φόρμες βασισμένες σε XML);
  • Προσέγγιση της σύνταξης της PHP στη γλώσσα C.
  • Έλλειψη ισχυρής πληκτρολόγησης - οι μεταβλητές πληκτρολογούνται δυναμικά.

Οι τύποι δεδομένων είναι εκεί που ξεκινάτε να μαθαίνετε PHP

  • Υποστήριξη OOP ( αντικειμενοστραφής προγραμματισμός);
  • Ένα μεγάλο σύνολο υπερσφαιρικών (προκαθορισμένων) συστοιχιών σχεδιασμένων να λειτουργούν με χώρο ιστού.

Τι είναι η MySQL;

Το MySQL είναι ένα δωρεάν DBMS από την Oracle. Μαζί με δωρεάν έκδοσηανάπτυξη και εμπορικές εκδόσεις στο πλαίσιο της παραγγελίας. Χάρη σε αυτό, όλες οι νέες εξελίξεις της εταιρείας εισάγονται αναγκαστικά στις δωρεάν εκδόσεις του DBMS:


Χαρακτηριστικά του MySQL DBMS:
  • Υποστήριξη για τον μηχανισμό αναπαραγωγής δεδομένων από τις πρώτες εκδόσεις της MySQL.

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

  • Η εργασία υποστηρίζεται τόσο από τοπικές πηγές όσο και από απομακρυσμένες.
  • Ενσωματωμένη υποστήριξη για μεγάλο αριθμό τύπων τραπεζιών. Και χάρη σε ανοιχτή πηγήη λίστα των υποστηριζόμενων τύπων πινάκων αυξάνεται.
  • Ευρεία γκάμα cross-platform?
  • Μέγεθος πίνακα βάσης δεδομένων Δεδομένα MySQLπεριορίζεται μόνο από τις δυνατότητες λειτουργικό σύστημαστο οποίο έχει αναπτυχθεί το DBMS·
  • Υποστήριξη για τις πιο δημοφιλείς γλώσσες προγραμματισμού μέσω API ( διεπαφή εφαρμογής).

Περισσότερο λεπτομερείς πληροφορίεςμπορείτε να μάθετε για τις δυνατότητες του DBMS από οποιοδήποτε σεμινάριο ή αναφορά στο MySQL.

Από πού να ξεκινήσω;

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


Μερικές καλύτερες επιλογές:
  • Διακομιστής Apache HTTP - μπορεί να γίνει λήψη από τον επίσημο ιστότοπο του προγραμματιστή.
  • Το Denver είναι η καλύτερη επιλογή για εγκατάσταση και περαιτέρω χρήση. Το πακέτο εγκατάστασης περιλαμβάνει τον διακομιστή Apache, PHP και MySQL. Στην πρώτη επιλογή, θα πρέπει να κατεβάσετε και να εγκαταστήσετε όλα αυτά ξεχωριστά.
  • Το XAMPP είναι μια σουίτα που περιλαμβάνει PHP και MySQL. Καθώς και το ενσωματωμένο σεμινάριο PHP:

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

Το θέμα είναι αρκετά σύνθετο. Σήμερα θα μιλήσουμε για το πώς να γράψουμε έναν ιστότοπο σε php από την αρχή. Ας ρίξουμε μια πιο προσεκτική ματιά στο τι σημαίνουν αυτά τα αγαπημένα τρία γράμματα και θα μάθετε καλύτερους τρόπουςόχι μόνο μαθαίνουν, αλλά κατανοούν πραγματικά την php.

Τι είναι η PHP;

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

Με απλούς και προσβάσιμους όρους, η php είναι μια γλώσσα προγραμματισμού ειδικά σχεδιασμένη για τη δέσμη ενεργειών μιας εφαρμογής Ιστού που εκτελείται σε διακομιστή Ιστού. Αυτή είναι μια αρκετά δημοφιλής γλώσσα προγραμματισμού, καθώς το 85% των ιστοσελίδων τη χρησιμοποιεί.

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

Μελετάμε αποτελεσματικά

Πολλοί άρχισαν να μαθαίνουν αυτή τη γλώσσα, αλλά λίγοι φτάνουν στο τέλος. Για αποτελεσματική μάθηση, το πρώτο πράγμα που πρέπει να κάνετε είναι να βρείτε μια πηγή πληροφοριών, ένα βιβλίο, ένα σεμινάριο ή ένα βίντεο, αλλά περισσότερα για αυτό αργότερα.

Τότε πρέπει να κατεβάσουμε τον μεταγλωττιστή. Αυτό είναι ένα πρόγραμμα που διαβάζει το σενάριό σας γραμμή προς γραμμή ως δήλωση και το εκτελεί.

Ο πιο συνηθισμένος μεταγλωττιστής είναι το denver - απλό και δωρεάν πακέτο επιθυμητά προγράμματαμε το οποίο μπορείτε να γράψετε σενάρια. Αν ρωτήσετε τη γνώμη μου, τότε θα σας συμβούλευα να κατεβάσετε το Open Server. Τώρα κερδίζει δυναμική. Είναι ένα κεφάλι ψηλότερο από το Ντένβερ και θα είναι πιο άνετο για εσάς να εργαστείτε.

Τι κάνουν αυτά τα πακέτα; Το επιτρέπουν και το δουλεύουν όπως σε διακομιστή. Δεν είναι απαραίτητο να κατεβάσετε τίποτα αυτήν τη στιγμή. Θα ακούσετε περισσότερες από μία φορές για χρήσιμο λογισμικό από αυτήν τη σειρά σε οποιοδήποτε εκπαιδευτικό πρόγραμμα, αλλά θα το χρειαστείτε.

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

Βιβλία για μάθηση

Επιτρέψτε μου να σας πω ότι δεν είμαι λάτρης των βιβλίων. Όσον αφορά την τεχνολογία του Διαδικτύου. Είναι σαν να εξηγείς σε έναν άνθρωπο των Μασάι τι είναι το wi-fi. Κανένα σχέδιο δεν θα σας βοηθήσει να κατανοήσετε τα πάντα κανονικά. Ωστόσο, θέλω να σας δώσω μια μικρή λίστα με βιβλία php για ανδρείκελα που περιλαμβάνονται μεταξύ των επαγγελματιών.

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

PHP και MySQL. Ανάπτυξη διαδικτυακών εφαρμογών Αυτό είναι ένα υπέροχο βιβλίο για έναν αρχάριο. Πρώτα απ 'όλα, ο συγγραφέας θα δείξει πώς να ρυθμίσετε το Apache (διακομιστής HTTP), PHP και MySQL (βάση δεδομένων), στη συνέχεια θα σας πει πώς να επιλέξετε έναν επεξεργαστή κώδικα. Το βιβλίο καλύπτει: τη σύνταξη της γλώσσας, τα περισσότερα χρήσιμα χαρακτηριστικά, δημιουργώντας τον δικό σας κινητήρα και μια σειρά από άλλες λειτουργίες.


Σε γενικές γραμμές, τίποτα δεν προκαλεί έκπληξη, έτσι δεν είναι; Ωστόσο, είναι ένα πραγματικό εγχειρίδιο με μοναδικές πληροφορίες που δεν θα βρείτε πουθενά αλλού. Αυτή είναι η πέμπτη έκδοση, επομένως δεν θα υπάρχουν ξεπερασμένες πληροφορίες. Το βιβλίο κυκλοφόρησε το 2015. Για να αρχίσετε να εξοικειωθείτε μόνοι σας με τον κωδικό - αυτό είναι.

HTML, JavaScript, PHP και MySQL. Webmaster's Gentleman's Set - Αυτό είναι ένα πιο λεπτομερές σεμινάριο εκμάθησης php. Αγγίζει αρκετές άλλες χρήσιμες, χωρίς τις οποίες η πλήρης δημιουργία διαδικτυακών εφαρμογών είναι αδύνατη.

Ευανάγνωστο, κατάλληλο για αυτοδιδασκαλία και μάθηση μαθητών. Ο συγγραφέας καλύπτει θέματα όπως: php βασικά, δυναμική δημιουργία σελίδας όταν Βοήθεια CSS(cascading style sheet), διαχείριση βάσης δεδομένων, δημιουργία δυναμικές σελίδεςχρησιμοποιώντας JavaScript.


Δημιουργούμε δυναμικές ιστοσελίδες με χρησιμοποιώντας PHP, MySQL, JavaScript, CSS και HTML5 - Θα συνιστούσα αυτό το βιβλίο σε πιο προχωρημένους αναγνώστες που έχουν ήδη βασικές δεξιότητες διάταξης HTML. Εάν το έχετε μελετήσει ποτέ και εξακολουθείτε να θυμάστε τις βασικές αρχές, τότε αυτό το βιβλίο είναι για εσάς.


PHP και MySQL. Από αρχάριο έως επαγγελματία - και το βιβλίο του Kevin Jank ολοκληρώνει την κριτική μας, στην οποία ο συγγραφέας κάνει μια ισχυρή προκατάληψη για τη δημιουργία διαδικτυακών εφαρμογών με βάση δεδομένων.


Το βιβλίο διαβάζεται πολύ εύκολα και είναι ιδανικό για αυτο-μελέτη.

βίντεο YouTube

Από τη δική μου εμπειρία, θα πω ότι η εκμάθηση php από βίντεο YouTube είναι αρκετά δύσκολη. Αν και φαίνονται απλά. Σε αντίθεση με τα σεμινάρια του Photoshop που μου αρέσουν, η εκμάθηση γλωσσών προγραμματισμού στο YouTube είναι απλά αδύνατη. Ακόμη και ένα βίντεο που διαρκεί μόνο 15-20 λεπτά προκαλεί μεγάλη ταλαιπωρία.

Τέτοια βίντεο μπορεί να σας αποθαρρύνουν από το να πληκτρολογήσετε μόνοι σας τον κωδικό. Γιατί, αν ο συγγραφέας έχει ήδη κάνει τα πάντα για εσάς: πληκτρολόγηση, εκτόξευση, υπόδειξη συγκεκριμένο παράδειγμαπως λειτουργουν ολα? Ως αποτέλεσμα, το να θυμάστε κάτι είναι σχεδόν αδύνατο.

Φροντιστήριο

Κατά τη γνώμη μου, αυτή είναι η τέλεια εμπειρία μάθησης. Είναι υπέροχο να έχεις έναν ειδικό μαζί σου.

Κάθε μάθημα συνοδεύεται από σχόλια, μπορείτε να κάνετε ερωτήσεις σε ειδικούς, να συζητήσετε ήρεμα και να λύσετε ακατανόητα σημεία. Δεν χρειάζεται να σερφάρετε στο διαδίκτυο αναζητώντας πληροφορίες. Όλα θα μασηθούν και θα μπουν στο στόμα, το μόνο που μένει είναι να το χρησιμοποιήσετε.

Θα σας δοθεί μια εργασία και θα παρακολουθούνται για να δούμε πόσο καλά την εκτελείτε.

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

Μην ανησυχείτε αν δεν καταλαβαίνετε κάτι. Αυτό είναι που το μάθημα έχει σχεδιαστεί για να μάθετε. Αυτό είναι αληθινό βήμα προς βήμα οδηγίεςγια αρχάριους. Δεν πιστεύεις; Κατεβάστε πλήρες πρόγραμμαφυσικά από την επίσημη ιστοσελίδα και θα πειστείτε γι' αυτό.


Αν ονειρεύεστε να μάθετε πώς να δημιουργείτε ιστότοπους χωρίς, μόνοι σας και σε php, τότε αυτή είναι η καλύτερη επιλογή για εσάς.

Reg.ru: τομείς και φιλοξενία

Ο μεγαλύτερος καταχωρητής και πάροχος φιλοξενίας στη Ρωσία.

Πάνω από 2 εκατομμύρια ονόματα τομέα σε υπηρεσία.

Προώθηση, mail για domain, λύσεις για επιχειρήσεις.

Περισσότεροι από 700 χιλιάδες πελάτες σε όλο τον κόσμο έχουν ήδη κάνει την επιλογή τους.

*Μετακίνηση του ποντικιού για παύση της κύλισης.

Πίσω μπροστά

20 τρόποι για να μάθετε PHP και να σώσετε γατάκια

Υπάρχει ένα παλιό ρητό που πηγαίνει πίσω στις αρχές του 1700. Λέει, "Κάθε φορά που ένας προγραμματιστής PHP δεν ακολουθεί τις βέλτιστες πρακτικές κωδικοποίησης, ένα γατάκι πεθαίνει."

Εντάξει, ας είναι αστείο, αλλά ας γίνουμε αυτό από το οποίο ξεκινάμε.

Το να ξεκινήσετε με την PHP μπορεί να είναι μια δύσκολη εμπειρία. Με δεδομένο αυτό, 20 καλή συμβουλήσας διδάξει πώς να ακολουθείτε τις βέλτιστες πρακτικές και να σώσετε ζωές... ζωών γατών.


0. Κωδικοποιήστε όσο πιο συχνά μπορείτε.

Σπούδασες ξένη γλώσσα στο σχολείο; Μάθατε όλα τα μέρη του λόγου, τα ρήματα και πώς να τα συζεύξετε, ενώ ακούτε συνεχώς την ομιλία του δασκάλου, χτισμένη από τις πιο απλές φράσεις και κατασκευές;

Πόση από τις γνώσεις που αποκτήσατε εκείνη τη στιγμή χρησιμοποιείτε πραγματικά;

«Συχνός προγραμματισμός με συγκεκριμένος σκοπόςθα οδηγήσει σε μια σταθερή αφομοίωση της γνώσης.

Εάν η απάντησή σας είναι "όχι", τότε είμαι πρόθυμος να στοιχηματίσω ότι δεν έχετε χρησιμοποιήσει πραγματικά τη γλώσσα - απλώς την έχετε μάθει. Αλλά εάν εξακολουθείτε να είστε σε θέση να συνεχίσετε μια συνομιλία, τότε πιθανότατα οφείλεται στο γεγονός ότι μιλάτε αυτήν τη γλώσσα για κάποιο χρονικό διάστημα εκτός του διδακτικού πλαισίου. Ίσως περάσατε κάποιο χρόνο στο εξωτερικό ή εργαστήκατε σε ένα μέρος όπου απαιτείται γνώση αυτής της γλώσσας;

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

"Η PHP είναι μια άγνωστη γλώσσα, όπως τα ισπανικά ή τα γαλλικά. Για να αισθάνεστε άνετα με αυτήν, πρέπει να την εξασκείτε έξω από την "τάξη".

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

Μην ανησυχείτε λοιπόν αν δεν «ξέρετε όλα όσα χρειάζεστε» πριν ξεκινήσετε το έργο. Όταν έχετε αποφασίσει για ένα έργο, έχετε έναν καλό λόγο να μάθετε όλα όσα χρειάζεστε και να τα εφαρμόσετε στην πράξη. Ο συχνός προγραμματισμός με συγκεκριμένο στόχο θα οδηγήσει σε σταθερή απορρόφηση της γνώσης.


1. Ελέγξτε την τεκμηρίωση της PHP

Κάθε λίστα χρήσιμες συμβουλέςγια κάποιο λόγο περιέχει αυτό το στοιχείο. Και σίγουρα όχι μάταια.

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

Αν κοιτάξετε το ιστορικό των τοποθεσιών στο πρόγραμμα περιήγησής μου, το εγχειρίδιο PHP είναι το πιο επισκέψιμο. Και υποψιάζομαι ότι η κατάσταση δεν θα αλλάξει όσο προγραμματίζω σε PHP.

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

Ίσως μια από τις χρήσιμες γνώσεις σχετικά με το εγχειρίδιο είναι ότι οι περισσότερες από τις δυνατότητες μπορούν να βρεθούν χρησιμοποιώντας το πρότυπο http://php.net/function-nameσε γραμμή διεύθυνσης. Για παράδειγμα, για να βρείτε μια συνάρτηση strpos()χρησιμοποιήστε τη διεύθυνση http://php.net/strpos, και για array_key_exists() - http://php.net/array-key-exists. Σημειώστε την απουσία παρενθέσεων στη διεύθυνση και την αλλαγή της υπογράμμισης σε χαρακτήρα παύλας.


1α. Διαβάστε τα σχόλια!

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

Επιπλέον, διαβάζοντας τα σχόλια άλλων ανθρώπων, μπορείτε να πάρετε πολλές χρήσιμες ιδέες από άλλους προγραμματιστές.


2. Εκμεταλλευτείτε την τεράστια κοινότητα PHP

Εκτός από το εγχειρίδιο PHP, υπάρχουν πολλές άλλες μεγάλες κοινότητες προγραμματιστών στον ιστό. Από τα αγαπημένα μου: stackoverflow.comκαι φόρουμ W3Schools.com.

Επίσης, το Twitter είναι ένα εκπληκτικά εξαιρετικό μέρος για να δημοσιεύετε ερωτήσεις σχετικά με την PHP. Εάν προσθέσετε ετικέτα σε ένα tweet με "PHP", το πιθανότερο είναι ότι κάποιος στην κοινότητα θα το προσέξει και θα βοηθήσει.

"Είναι σημαντικό να θυμάστε ότι μόλις εξοικειωθείτε με Η PHP είναι καλύτερη- ανταποδώστε το καλό για το καλό. Για να ζήσει η κοινότητα χρειάζεσαι όσο το δυνατόν περισσότερους ενεργούς ανθρώπους. Προσπαθήστε να απαντήσετε σε ερωτήσεις από άλλους αρχάριους. Μην κωφεύεστε στις ερωτήσεις των άλλων."


3. Μην αναβάλλετε την καλή πρακτική

Καθώς μαθαίνετε, πιθανότατα θα ακούσετε για καλές συνήθειες και πρότυπα κωδικοποίησης, όπως προετοιμασμένες εκφράσεις και πρότυπα από το PEAR. Μην αναβάλλετε να μάθετε αυτά τα πράγματα «μέχρι αργότερα» μόνο και μόνο επειδή φαίνονται περίπλοκα.

"Αν κάτι είναι καλή πρακτική, δεν είναι επειδή εμείς (άλλοι προγραμματιστές PHP) μαζευτήκαμε και είπαμε: "Πώς μπορούμε να κάνουμε τη ζωή δύσκολη για τους αρχάριους;"

Υπάρχουν καλές πρακτικές για να κάνουν τα σενάρια σας πιο ευέλικτα, ασφαλέστερα και πιο γρήγορα. Μάθετε τα όσο πιο γρήγορα μπορείτε. Στην πραγματικότητα, δεν πρέπει καν να αρχίσετε να μαθαίνετε με λάθος τρόπο.

Ο χρόνος που αφιερώνεις στη μελέτη mysql_query()συγκρίσιμο με το χρόνο μελέτης Π.Ο.Πή MySQLi. Επομένως, εάν ξεκινήσετε αμέσως με τη δεύτερη επιλογή, μπορείτε να είστε σίγουροι ότι ξεκινάτε με τις βασικές αρχές της εργασίας με μια βάση δεδομένων και, τελικά, ξοδεύετε λιγότερη προσπάθεια και χρόνο σε αυτήν.


4. Μην αναβάλλετε τις καλές πρακτικές για αργότερα!

Ήθελα απλώς να βεβαιωθώ ότι το λάβατε υπόψη σας.

«Σοβαρά παιδιά, μην καθυστερείτε μακρύ κουτί. Κάθε φορά που παραβιάζετε τις βέλτιστες πρακτικές επειδή φαίνονται «πολύ περίπλοκες», η BP πνίγει ένα άλλο αφράτο γατάκι σε αργό λάδι».

Έτσι, εκτός αν το κάνετε αυτό για τον εαυτό σας, τα έργα σας, τους συναδέλφους σας ή την κοινότητα γενικότερα, τουλάχιστον να έχετε στο μυαλό σας τα γατάκια.


5. Κάντε τον κωδικό σας αυτο-τεκμηριωμένο

Στα αρχικά στάδια, φυσικά, μπορεί να είναι δελεαστικό να "παίζουμε" με ονόματα μεταβλητών και συναρτήσεων. Ίσως έχετε διαβάσει άρθρα σχετικά με την απόδοση ή έχετε δει ένα απόσπασμα κώδικα που κάνει πολλή δουλειά σε δύο μόνο γραμμές κώδικα (αλλά τόσο πολύ μεγάλο :)), ή θέλετε να δημιουργήσετε τη δική σας κωδικοποίηση "εμπορικής επωνυμίας";

"Εάν θέλετε να επιβιώσετε όλους τους χαρακτήρες από ονόματα μεταβλητών, προκειμένου να μειώσετε τον συνολικό χρόνο εκτέλεσης του σεναρίου κατά 0,2 ms, τότε είναι πιθανό να αντιμετωπίσετε μεγάλα προβλήματα."

Όποιος κι αν είναι ο πειρασμός, πρέπει να αντισταθείτε με κάθε κόστος.

Εξετάστε το ακόλουθο απόσπασμα κώδικα:

Καταλαβαίνεις αμέσως τι συμβαίνει εδώ;

Φυσικά, θα καταλάβετε πώς λειτουργεί, αλλά γιατί να κάνετε άλλα άτομα που μελετούν τον κώδικά σας να αφιερώσουν ένα επιπλέον λεπτό προσπαθώντας να καταλάβουν τι περιέχει η μεταβλητή με το "ομιλούμενο" όνομα "c";

Ας πάρουμε αυτόν τον κωδικό και ας τον κάνουμε αυτο-τεκμηριωμένο:

Αυτό είναι. Πολύ καλύτερα. Τώρα, κοιτάζοντας μόνο τον κώδικα, μπορείτε να πάρετε μια γενική ιδέα για το τι συμβαίνει. Χωρίς τρίψιμο μετώπων και μουρμουρίζοντας κατάρες και, κυρίως, καμία διαφορά.

Φυσικά, μπορείτε να κερδίσετε μερικά byte χρησιμοποιώντας σύντομα ονόματα μεταβλητών. Αλλά, ειλικρινά, εάν θέλετε να επιβιώσετε όλους τους χαρακτήρες από ονόματα μεταβλητών για να μειώσετε τον συνολικό χρόνο εκτέλεσης του σεναρίου κατά 0,2 ms, τότε πιθανότατα θα αντιμετωπίσετε μεγάλα προβλήματα.


6. Προσθέστε σχόλια σε όλα όσα έχετε να σκεφτείτε

Τα σχόλια δεν είναι χαρακτηριστικό γνώρισμα των νεοφερμένων. Μάλλον, αντίθετα, μελετώντας ένα μεγάλο μέρος του κώδικα κάποιου άλλου, καταλήγω στο συμπέρασμα ότι τα σχόλια είναι σημάδι ενός ικανού προγραμματιστή Ιστού.

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

"Τα σχόλια είναι το σήμα ενός ικανού προγραμματιστή Ιστού."

Όταν συμβεί αυτό, σχολιάστε τον κώδικα. "Future You" πείτε "Current You" σας ευχαριστώ πολύ όταν έρθει η ώρα να τροποποιήσετε το σενάριο.

«Σαν γενικό κανόνα, αν σκεφτείς για λίγα δευτερόλεπτα τι πρέπει να γίνει για να λειτουργήσει το σενάριο όπως θα έπρεπε, αυτό είναι ένα σίγουρο σημάδι ότι αξίζει να σημειωθεί».

Ας δούμε:

$pieces = explode(".", $image_name); $extension = array_pop($pieces);

Τι συμβαίνει εδώ? Έπρεπε να σταματήσετε και να σκεφτείτε τον κωδικό; Δεν είστε ακόμα σίγουροι τι υπάρχει στη μεταβλητή $επέκταση?

Δείτε ξανά το παρακάτω απόσπασμα, με ένα μόνο σύντομο σχόλιο:

// Λήψη επεκτάσεων αρχείων εικόνας $pieces = explode(".", $image_name); $extension = array_pop($pieces);

Τώρα, ακόμα κι αν δεν γνωρίζετε ακριβώς πώς λειτουργεί κάποιος κώδικας, θα γνωρίζετε τουλάχιστον τι υπάρχει στη μεταβλητή $επέκτασηείναι η επέκταση εικόνας. Εάν βοηθάει το Future You, ή εξοικονομεί μερικά δευτερόλεπτα από το χρόνο άλλου προγραμματιστή, τότε είναι λογικό να αφιερώσετε 7 δευτερόλεπτα για να προσθέσετε ένα σχόλιο.

Όπως πάντα, το μέτρο είναι το κλειδί.

Πολύ λίγα σχόλια και διατρέχετε τον κίνδυνο να αφήσετε τον άλλο προγραμματιστή (και τον "Μελλοντικό Εσείς") σε σύγχυση σχετικά με ορισμένα αποσπάσματα κώδικα. Αυτό μπορεί να οδηγήσει ακόμη και σε τυχαία παραβίαση κώδικα, όπως αν δεν υπάρχει εξήγηση, τότε ο κώδικας μπορεί να φαίνεται ανόητος ή περιττός.

«Η μετριοπάθεια είναι το κλειδί για όλα».

Πάρα πολλά σχόλια - και ο κώδικάς σας γίνεται δύσκολο να "σαρωθεί", γεγονός που επίσης εμποδίζει πολύ τη δουλειά.


7. Μάθετε το Docblock και χρησιμοποιήστε το

Το Docblock είναι το πρότυπο σχολιασμού (περισσότερες πληροφορίες).

Έχω αρκετούς λόγους για να χρησιμοποιήσω αυτό το πρότυπο:

1. Μας κάνει να σκεφτόμαστε το «τι» και το «γιατί» για κάθε αρχείο, συνάρτηση, μέθοδο κ.λπ.

2. Δίνει σαφείς περιγραφές των αναμενόμενων παραμέτρων και επιστρεφόμενων τιμών για συναρτήσεις/μεθόδους.

3. Δίνει Σύντομη περιγραφήτι κάνει ένας συγκεκριμένος κώδικας.

4. Σε συνδυασμό με ένα περιβάλλον ανάπτυξης (IDE) που υποστηρίζει το Dockblock, έχουμε υποδείξεις κώδικα (που μας επιτρέπουν να βλέπουμε τις περιγραφές, τις αναμενόμενες παραμέτρους και τις τιμές επιστροφής για τις λειτουργίες και τις μεθόδους που χρησιμοποιούμε).

Αυτό το σημείο μπορεί να ονομαστεί περιορισμός για "αρχάριους υψηλού επιπέδου", αλλά το αποδίδω στις βέλτιστες πρακτικές που πρέπει να κατακτηθούν το συντομότερο δυνατό.

Μη διστάσετε να παραλείψετε αυτό το βήμα, αλλά να έχετε κατά νου τα γατάκια.

Το Docblock δείχνει την ευελιξία του όταν χρησιμοποιείται για την τεκμηρίωση κλάσεων:

/** * Μια απλή κλάση για τον υπολογισμό του αθροίσματος ή της διαφοράς του $_foo και κάποια τιμή * * @author Jason Lengstorf * @copyright 2011 Copter Labs * @license http://www.opensource.org/licenses/mit-license.html */ class CopterLabs_Test ( /** * Τιμή που χρησιμοποιείται για πρόσθεση και αφαίρεση * @var int */ private $ _foo = 0; /** * Προσθέστε αξία στο $_foo και επιστρέψτε το άθροισμα * @param int $add_me Τιμή για προσθήκη στο $_foo * @return int Άθροισμα των $_foo και $add_me */ δημόσια συνάρτηση add_to_foo($add_me=0) ( return $this->_foo += $add_me; ) /** * Αφαιρέστε μια τιμή από $_foo και επιστρέψτε τη διαφορά * @param int $subtract_me Η τιμή προς αφαίρεση από $_foo * @return int Η διαφορά μεταξύ $_foo και $ subtract_me */ δημόσια συνάρτηση subtract_from_foo($subtract_me=0) (επιστροφή $this->_foo -= $subtract_me; ) )

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

Το παραπάνω Docblock όταν χρησιμοποιείται στο Netbeans θα μας δώσει συμβουλές κώδικα όπως αυτό:


8. Μην είστε τόσο σκληροπυρηνικός κωδικοποιητής που δεν θέλετε ένα IDE

Εάν δεν το γνωρίζετε ήδη, τότε υπάρχει αυτή η πεποίθηση: Οι σκληροί κωδικοποιητές που σκέφτονται σαν πραγματικοί προγραμματιστές δεν χρησιμοποιούν IDE.

Τώρα κοιτάξτε, αν θέλετε να εντυπωσιάσετε τους ανθρώπους, καλύτερα να μάθετε πώς να κάνετε ταχυδακτυλουργίες.

Αρνούμενος να χρησιμοποιήσει οτιδήποτε άλλο εκτός από το Emacs μέσα γραμμή εντολώνΤο να γράφετε σενάρια δεν θα σας κολλήσουν τα κορίτσια ή θα χαρακτηριστείτε αμέσως ως κακός χάκερ, ωστόσο, θα είναι μια δικαιολογία για τους συναδέλφους σας να βάλουν μια προειδοποίηση στο μέτωπό σας ότι είστε ένας "περίεργος τύπος". ".

Μην είσαι «περίεργος τύπος».

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

Το πόσο ισχυρό θα χρησιμοποιηθεί ένα IDE εξαρτάται αποκλειστικά από εσάς. Προσωπικά, μου αρέσει πολύ το Netbeans. Έχω ακούσει πολλούς επαίνους για το Coda για Mac (αν και δεν είναι πραγματικά IDE) και χρησιμοποιούσα ο ίδιος το Eclipse (πριν μετακομίσω στο Netbeans).

Ανεξάρτητα από το ποιο IDE χρησιμοποιείτε, θα δείτε αύξηση της ταχύτητας και μείωση των δευτερευόντων σφαλμάτων. Αργότερα, όταν οι βιβλιοθήκες κωδίκων σας μεγαλώσουν, θα έχετε υποδείξεις κώδικα για όλες τις εφαρμογές σας (επειδή χρησιμοποιείτε το Docblock, σωστά; Σωστά;!)

Μην νομίζετε ότι τα IDE δεν είναι ωραία - ανεξάρτητα από το τι σας λέει ο "Παράξενος τύπος".


9. Ομαδοποιήστε τον επαναλαμβανόμενο κώδικα σε συναρτήσεις

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

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

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

Εξετάστε το ακόλουθο παράδειγμα:

$unclean1 = "Κάντε κλικ σε εμένα!"; $detagged1 = strip_tags($unclean1); $deslashed1 = stripslashes($detagged1); $clean1 = htmlentities($deslashed1, ENT_QUOTES, "UTF-8"); $unclean2 = "Ας καλέσουμε τον Bjorn!"; $detagged2 = strip_tags($unclean2); $deslashed2 = stripslashes($detagged2); $clean2 = htmlentities($deslashed2, ENT_QUOTES, "UTF-8"); echo $clean1 , "
", $clean2;

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

Αυτό συμβαίνει όταν η χρήση μιας συνάρτησης είναι πολύ πιο επιθυμητή:

$unclean1 = "Κάντε κλικ σε εμένα!"; $unclean2 = "Ας καλέσουμε τον Bjorn!"; $clean1 = sanitize_input($unclean1); $clean2 = sanitize_input($unclean2); echo $clean1, "
", $clean2; συνάρτηση sanitize_input($input) ( $detagged = strip_tags($input); $deslashed = stripslashes($detagged); επιστροφή htmlentities($deslashed, ENT_QUOTES, "UTF-8"); )

Αφού βάλετε επαναλαμβανόμενο κώδικα σε μια συνάρτηση, είναι πολύ πιο εύκολο να πλοηγηθείτε και να επεξεργαστείτε τα βήματα που κάνετε για να καθαρίσετε την είσοδο.


10. Ομαδοποιήστε παρόμοιες συναρτήσεις σε κλάσεις

Η εξοικείωση με το OOP (αντικειμενοστρεφής προγραμματισμός) είναι ένα άλλο σημείο που μπορεί να κατηγοριοποιηθεί ως "μάθηση όσο το δυνατόν νωρίτερα".

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

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


11. Χρησιμοποιήστε σταθερές, όχι καθολικές μεταβλητές.

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

Αποθ. $GLOBALSγια πρόσβαση στις απαιτούμενες πληροφορίες.

Τότε συνειδητοποίησα ότι η PHP σας επιτρέπει να ορίσετε σταθερές χρησιμοποιώντας τη συνάρτηση καθορίζω().

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

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

\n" . $global; ) ?>

12. Μην φοβάστε να χρησιμοποιήσετε το Includes

Σχεδόν πάντα, όταν δημιουργείτε μεγάλα έργα, είναι λογικό να τα χωρίζετε σε μικρότερα κομμάτια χρησιμοποιώντας αρχεία συμπερίληψης.

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

Έτσι, μπορείτε να κάνετε συνδέσεις στα σωστά σημεία απαιτούμενος κωδικόςμια γραμμή αντί να αντιγράψετε και να επικολλήσετε το ίδιο κομμάτι κώδικα.

Για παράδειγμα, σε έναν ιστότοπο με πολλές σελίδες, ένα τυπικό πρότυπο μπορεί να μοιάζει κάπως έτσι:


13. Μην τρελαίνεστε για τις επιδόσεις

Αυτό είναι ένα σοβαρό εμπόδιο για ορισμένους προγραμματιστές, κάτι που δεν είναι καλό. Υπάρχει μια πολύ λεπτή γραμμή μεταξύ της σύνταξης αποτελεσματικού κώδικα και απόβληταχρόνος να προσπαθήσουμε να μειώσουμε τον χρόνο εκτέλεσης του σεναρίου κατά 5 ms.

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

«Χρησιμοποιήστε το κεφάλι σας για να αποφύγετε μεγάλα προβλήματα και κρατήστε τα αυτιά σας ανοιχτά όταν ακούτε για τεχνικές επιτάχυνσης εφαρμογών, αλλά μην το κάνετε αγώνα επιδόσεων».

Κανείς δεν θα μπορεί να παρατηρήσει τη διαφορά όταν φορτώνει μια σελίδα σε 25 ή 40 ms. Βεβαιωθείτε ότι δεν είναι 700ms. και συνεχίστε με πιο σημαντικά πράγματα.


14. Μην «παντρεύετε» την HTML με τα σενάρια σας.

Αυτό μπορεί να απαιτεί μεγάλη εφευρετικότητα από εσάς, αλλά προσπαθήστε να αποφύγετε την εισαγωγή σήμανσης σε όλο τον κώδικα PHP. Είναι σχεδόν αδύνατο να το αφαιρέσετε εντελώς από αρχεία PHP, αλλά φροντίστε να κάνετε ό,τι καλύτερο μπορείτε για να αποφύγετε τη συμπερίληψη μη βασικής σήμανσης HTML στον κώδικά σας.

Εξετάστε το ακόλουθο παράδειγμα:

ηχώ"

Εδώ έρχεται το περιεχόμενο.

";

Είναι πραγματικά απαραίτητο να τυλίξετε μια παράγραφο με μια ετικέτα; div? Είναι δυνατόν να αλλάξετε τον κώδικα ώστε να περιλαμβάνει μόνο ετικέτες παραγράφου για περιεχόμενο κειμένου; Ας δούμε μια εναλλακτική:

Εδώ έρχεται το περιεχόμενο.

"; ?>

Σημείωση: Αυτό το παράδειγμα είναι πολύ απλοποιημένο. Η κύρια ιδέα είναι να αντισταθείτε στον πειρασμό να βάλετε πολύ περισσότερη σήμανση στο αρχείο PHP από ό,τι χρειάζεται.

Στις περισσότερες περιπτώσεις, μπορείτε να διαχωρίσετε την HTML από την PHP, κάτι που θα διευκολύνει την ανάγνωση και τη συντήρηση των σεναρίων σας.


15. Προσπαθήστε να χρησιμοποιήσετε τουλάχιστον μια άγνωστη ιδέα σε κάθε νέο έργο.

Δεν θα μάθετε ποτέ κάτι νέο αν συνεχίσετε να κάνετε τα ίδια πράγματα. Για κάθε νέο έργο, χρησιμοποιήστε τουλάχιστον ένα νέα τεχνολογία, ένα νέο κόλπο που δεν έχετε συνηθίσει.

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

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


16. Μην είστε πολύ περήφανοι για να αλλάξετε.

Θα κάνεις λάθος. Και συχνά. Αλλά δεν είναι τόσο κακό.

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

Είναι πολύ σημαντικό εδώ να μην κολλήσετε στον κώδικα που έχετε γράψει. Μην νομίζετε ότι ο κώδικάς σας είναι καλύτερος μόνο και μόνο επειδή τον γράψατε. Αν συναντήσετε μια δροσερή λύση σε ένα πρόβλημα, χρησιμοποιήστε την! Δώστε προσοχή στο τι έχουν κάνει οι άλλοι και τι μπορείτε να βελτιώσετε μόνοι σας.

"Μην επιτρέπετε ποτέ στον εαυτό σας να πιστεύει ότι μια αντιεπαγγελματική απόφαση είναι αποδεκτή επειδή είναι δική σας. Αυτό είναι αλαζονεία (που συνήθως δεν οδηγεί σε τίποτα καλό)."


17. Επικύρωση

Εάν είστε προγραμματιστής ιστού, ξεκινήστε να μαθαίνετε την επικύρωση εισόδου όσο το δυνατόν νωρίτερα.

Θυμάμαι:Η επικύρωση δεν είναι το ίδιο με την απολύμανση.

"Η επικύρωση των εισερχόμενων δεδομένων είναι ο έλεγχος του γεγονότος ότι αυτά τα δεδομένα αντιστοιχούν σε μια συγκεκριμένη μορφή, όπως έλεγχος εάν η εισαγόμενη τιμή είναι έγκυρη διεύθυνση email ή εάν το πεδίο σύνδεσης περιέχει από 8 έως 20 λατινικούς χαρακτήρες ή αριθμούς."

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


18. Ό,τι δεν απαγορεύεται επιτρέπεται;

Σε πολλές περιπτώσεις, πρέπει να απαλλαγείτε από ορισμένους χαρακτήρες, κομμάτια κειμένου, ετικέτες και ούτω καθεξής.

Μια τυπική λύση είναι η δημιουργία μιας λεγόμενης «μαύρης λίστας»: μια συλλογή απαγορευμένων ετικετών, συμβόλων κ.λπ.

«Αν δεν ανανεώνετε και δεν παρακολουθείτε συνεχώς τη μαύρη λίστα σας, τότε αυτό είναι γεμάτο με τρωτά σημεία».

Αυτό, ωστόσο, δημιουργεί πρόσθετες δυσκολίες. Πρέπει να είσαι πιο έξυπνος από αυτούς που θέλουν να κάνουν κάτι «παράνομο». Για παράδειγμα, για να απενεργοποιήσετε τη JavaScript στα σχόλια, θα μπορούσατε να απενεργοποιήσετε τη χρήση του συμβάντος OnClick και των παρόμοιων, αλλά τι γίνεται αν χάσατε κάτι; Τι θα συμβεί αν κάποια νέα συμβάντα προστεθούν στην προδιαγραφή στο μέλλον;

Εάν δεν ανανεώνετε και παρακολουθείτε συνεχώς τη μαύρη λίστα σας, τότε αυτό είναι γεμάτο με τρωτά σημεία.

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

Για παράδειγμα, στη συνάρτηση strip_tags(), μπορείτε να καθορίσετε ρητά ποιες ετικέτες επιτρέπονται στις συμβολοσειρές:

Strip_tags($string, " ");

Τώρα το πρόβλημά σας πιθανότατα θα είναι ότι κάνατε λιγότερα από όσα θέλατε :) Ωστόσο, αυτή η προσέγγιση είναι πολύ πιο ασφαλής και θα προκαλέσει λιγότερο δυσάρεστες καταστάσεις στο μέλλον.

Φυσικά, δεν είναι δυνατό να χρησιμοποιήσετε αυτήν την προσέγγιση παντού, αλλά προσδιορίζοντας τι επιτρέπεται αντί για τι δεν επιτρέπεται, αποκτάτε περισσότερη ηρεμία και περισσότερο έλεγχο στα σενάρια σας.


Ψάχνετε για 20 τρόπους; Να θυμάστε ότι στην PHP σχεδόν πάντα και παντού η αντίστροφη μέτρηση ξεκινά από το μηδέν, άρα αυτός είναι ο 20ος τρόπος. Θα παρατηρήσετε ότι αυτό συμβαίνει σχεδόν σε όλες τις γλώσσες, οπότε μην ξεγελιέστε!


Συνοψίζοντας

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

Μην ανησυχείτε εάν όλα όσα γράφονται εδώ είναι καινούργια για εσάς: απλώς κάντε ένα βήμα τη φορά (βλ. παράγραφο 15).


Για όσους θέλουν να μάθουν PHP, μπορείτε να συμβουλεύσετε το εξαιρετικό "PHP Tutorial" από τον ιστότοπο PHP5.RU
Το μάθημα βρίσκεται στη διαδικασία συγγραφής, αλλά τώρα σύνδεσμοι για μεμονωμένα μαθήματα από αυτό βρίσκονται σε διάφορες ενότητες αυτού του FAQ. Και πιστέψτε με - αξίζει τον κόπο.
Δεν μπορώ να μην προτείνω το υπέροχο υλικό του Vadim Tkachenko AKA Bizon "Introduction to PHP and MySQL" . Εκδόθηκε μάλιστα ως ξεχωριστό βιβλίο, και τώρα - διορθώθηκε και συμπληρώθηκε - αναρτήθηκε στην ιστοσελίδα
"Η PHP αναλυτικά". Αυτός ο πόρος είναι μόνος. Σε αντίθεση με τα προηγούμενα, μόνο ένας σαδιστής μπορεί να συστήσει να το διαβάσει στο σύνολό του - υπάρχουν πάρα πολλές πληροφορίες εκεί. αλλά εκεί βρίσκεται η γοητεία του. Αυτή είναι μια ανεξάντλητη πηγή πληροφοριών PHP. Η μόνη παρατήρηση - προσέξτε την ημερομηνία σύνταξης του άρθρου. Δεν πρέπει να εμπιστεύεστε ιδιαίτερα αυτά που γράφτηκαν πριν από το 2003.
Και, φυσικά, αυτό το site
Αν δεν το έχετε διαβάσει ολόκληρο, φροντίστε να το κάνετε. Εδώ είναι τα προβλήματα που θα αντιμετωπίσουν ΟΛΟΙ όσοι γράφουν PHP αργά ή γρήγορα.

Λογισμικό.
Για να εργαστείτε με την PHP στα Windows, πρέπει να εγκαταστήσετε τα ακόλουθα προγράμματα:
- Διακομιστής ιστού Apache (5 Mb)
- Η ίδια η PHP (10 Mb)
- προαιρετικό - MySQL (23 Mb).
Η ρύθμιση είναι πολύ απλή. Το Apache εγκαθίσταται από το πρόγραμμα εγκατάστασης. Όπου ζητά το όνομα του διακομιστή σας και το email του διαχειριστή, πρέπει να γράψετε το localhost και το e-mail σας 2 φορές.
Η PHP αποσυσκευάζεται από το zip σε οποιονδήποτε κατάλογο της επιλογής σας (από προεπιλογή - C:\PHP) και διαμορφώνεται ως λειτουργική μονάδα Apache. Για να το κάνετε αυτό, πρέπει να εκτελέσετε τρία βήματα:
- ξαναγράψτε το αρχείο php5ts.dll στον κατάλογο WINDOWS
- στο αρχείο httpd.conf (C:\Program Files\Apache Group\Apache\conf\httpd.conf), στο κάτω μέρος, προσθέστε δύο γραμμές
LoadModule php5_module c:/php/php5apache2_2.dll
Εφαρμογή AddType/x-httpd-php .php .phtml

- επανεκκινήστε το Apache (χρησιμοποιώντας το βοηθητικό πρόγραμμα παρακολούθησης Apache στο δίσκο)
Αφού ολοκληρώσετε όλα αυτά τα βήματα, μπορείτε να κάνετε μια δοκιμή php σενάριο(ας πούμε ότι λέγεται test.php και αποτελείται από τη γραμμή

στον κατάλογο που είναι η ρίζα του διακομιστή web (από προεπιλογή είναι C:\Program Files\Apache Group\Apache\htdocs\) και αποκτήστε πρόσβαση σε αυτόν γράφοντας τη διεύθυνση στο πρόγραμμα περιήγησης
%20" target="_blank">http://127.0.0.1/test.php

Κατά την εγκατάσταση της MySQL, επιλέξτε Τυπική διαμόρφωση, στην επόμενη οθόνη κάντε κλικ στο Επόμενο, στην επόμενη οθόνη ορίστε έναν κωδικό πρόσβασης ή καταργήστε την επιλογή "Τροποποίηση ρυθμίσεων ασφαλείας" εάν θέλετε να τον αφήσετε κενό.
Για έλεγχο, εκτελέστε την κονσόλα Mysql: Έναρξη - Εκτέλεση και αντιγράψτε στη γραμμή που εμφανίζεται
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe"
ή
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -uroot -pPASSWORD
εάν ξεκινήσει η κονσόλα - όλα λειτουργούν. Πληκτρολογήστε exit για έξοδο και ξεκινήστε τη διαμόρφωση της υποστήριξης mysql της PHP.
Για να το κάνετε αυτό, εάν δεν το έχετε κάνει πριν, πάρτε το αρχείο c:\php\php.ini-development και αντιγράψτε το με το όνομα php.ini στον κατάλογο των Windows. Στη συνέχεια, επεξεργαστείτε το αφαιρώντας το ερωτηματικό στην αρχή της γραμμής
;επέκταση=php_mysql.dll
και επεξεργασία της παραμέτρου extension_dir:
extension_dir = "c:\php\ext\"
μπορεί να διορθωθεί ταυτόχρονα
short_open_tag = Ενεργό
ώστε να λειτουργούν παλιά σενάρια και βολικά πρότυπα
και μην ξεχάσετε να κάνετε επανεκκίνηση του Apache μετά από αυτό, όπως περιγράφεται παραπάνω.
Τώρα μπορείτε να χρησιμοποιήσετε mysql στα σενάρια php σας.

Εκείνοι για τους οποίους αυτή η οδηγία είναι πολύ περίπλοκη, μπορούν να δοκιμάσουν να εγκαταστήσουν ένα έτοιμο κιτ Denver-2.
Περιλαμβάνει όλα όσα χρειάζεστε ταυτόχρονα και πολλά περισσότερα περιττά. Και το πιο σημαντικό - όλα λειτουργούν από μόνα τους.
Ένα άλλο πλεονέκτημα του Ντένβερ είναι ότι ο όγκος του βασικού κιτ είναι 10 φορές μικρότερος. πλήρεις εκδόσεις- μόνο 4 megabyte. Και επίσης το γεγονός ότι ο συγγραφέας του γράφει ενδιαφέροντα βιβλία για την PHP.

Επίσης, σε όλους τους περίεργους ανθρώπους συνιστάται ένα ΠΟΛΥ λογικό άρθρο Εγκατάσταση και ρύθμιση παραμέτρων Apache + PHP
από τον ιστότοπο PHP5.RU. Και, φυσικά, τμήματα επίσημη τεκμηρίωσησχετικά με την εγκατάσταση των κατάλληλων προγραμμάτων.

Φόρουμ.
Κατά τη μελέτη οποιασδήποτε περίπτωσης, σίγουρα θα υπάρχουν ερωτήσεις.
Οι ερωτήσεις είναι εύκολο να γίνουν στα φόρουμ.
http://phpclub.ru/talk/forumdisplay.php?s=&forumid=12
Φόρουμ PHPclub. Το πιο επισκέψιμο και διάσημο. Δυστυχώς, η φήμη του κάνει κακό. Πολύ συχνά, μια ερώτηση αρχάριου απαντάται από έναν ακόμα πιο πράσινο αρχάριο, δίνοντας μια εντελώς λάθος απάντηση. Ωστόσο, υπάρχουν και πολλοί επαγγελματίες εκεί, έτοιμοι να εξηγήσουν τα λάθη τόσο στον πρώτο όσο και στον δεύτερο.

Η PHP εκπροσωπείται επίσης στο ρωσικό τμήμα του Livejournal
Σε κοινότητες Δυστυχώς, παρόλο που δεν έλαμψαν με την ποιότητα του υλικού, έχουν εγκαταλειφθεί εδώ και καιρό από τους συγγραφείς τους και τελικά έχουν χάσει την επικαιρότητά τους.
Ό,τι είναι καλύτερο για την PHP παρατίθεται στην κορυφή της σελίδας.
Εάν γνωρίζετε έναν καλό ιστότοπο - γράψτε γι 'αυτόν στην ενότητα "Σχόλια".

Γειά σου! Πριν ξεκινήσετε να μαθαίνετε, πρέπει να κάνετε εγκατάσταση με php. Εάν χρησιμοποιείτε Windows, θα πρέπει να εγκαταστήσετε το , ή το LAMP εάν είστε σε linux. Εάν είναι εγκατεστημένος ο διακομιστής web, μπορείτε να ξεκινήσετε τη σύνταξη του πρώτου σεναρίου php.

Αλλά πρώτα, μια λυρική παρέκβαση χρήσιμη για αρχάριους: για να λειτουργήσει ένα σενάριο php, πρέπει να βρίσκεται σε έναν συγκεκριμένο φάκελο στον διακομιστή ιστού. Γενικά, όταν αρχίζουν να μελετούν php, το πρώτο λάθος των αρχαρίων είναι να ανοίγουν php αρχείοείναι απευθείας μέσω . Έχω δει πολλές ερωτήσεις όπως "Προσπαθώ να ανοίξω ένα αρχείο php κάνοντας διπλό κλικ πάνω του και το ανοίγω στο πρόγραμμα περιήγησης και το πρόγραμμα περιήγησης το βγάζει ως κείμενο και το ίδιο το σενάριο δεν κάνει τίποτα". Ναί. Επειδή το πρόγραμμα περιήγησης δεν ξέρει πώς να εκτελεί σενάρια php. Το πρόγραμμα περιήγησης μπορεί να διαβάσει μόνο τα περιεχόμενα του αρχείου, αλλά όχι να το εκτελέσει, η εξαίρεση είναι η Javascript. Όλα τα άλλα αρχεία, όχι javascript, το πρόγραμμα περιήγησης θα εμφανίσει απλώς. Τι να κάνεις, ρωτάς; Πώς να εκτελέσετε το σενάριο; Για να το κάνουμε αυτό χρειαζόμαστε έναν web server με php, με τον οποίο θα τρέχουμε τα σενάρια php μας. Αλλά πώς συνδέονται ο διακομιστής Ιστού και το πρόγραμμα περιήγησης, ρωτάτε; Και πώς να εκτελέσετε ένα σενάριο php μέσω του προγράμματος περιήγησης; Κοιτάξτε, όταν πηγαίνετε σε κάποια τοποθεσία, πριν φορτώσετε τη σελίδα, το πρόγραμμα περιήγησης στέλνει ένα αίτημα στο σημείο που βρίσκεται ο ιστότοπος. Ξεκινά ο διακομιστής Ιστού επιθυμητή phpσενάριο βασισμένο σε δεδομένα που λαμβάνονται από το πρόγραμμα περιήγησης - διευθύνσεις ιστοσελίδεςκαι , και δίνει τις πληροφορίες που ελήφθησαν κατά την εκτέλεση του σεναρίου php πίσω στο πρόγραμμα περιήγησης. Δηλαδή, το ίδιο το πρόγραμμα περιήγησης δεν εκτελεί σενάρια php, εκτελούνται στον διακομιστή και το πρόγραμμα περιήγησης εμφανίζει μόνο τις πληροφορίες που προέρχονται από τον διακομιστή.

Απάντησα στην πρώτη ερώτηση, τώρα ας αναλύσουμε τη δεύτερη: πώς να εκτελέσετε ένα σενάριο php μέσω ενός προγράμματος περιήγησης; Εν μέρει, έχω ήδη απαντήσει σε αυτήν την ερώτηση παραπάνω, το μόνο που χρειάζεται είναι να εισαγάγουμε τη σωστή διεύθυνση URL στο πρόγραμμα περιήγησης στο σενάριο που βρίσκεται στον διακομιστή ιστού. Για αυτό, όπως είπα, μια τοπική διεύθυνση σε έναν υπολογιστή όπως το c:\program\script.php δεν θα λειτουργήσει, χρειάζεστε ακριβώς τη διεύθυνση URL, η οποία θα υποδεικνύει το όνομα διακομιστή ( , ή ). Εάν έχετε εγγεγραμμένο hosting, μπορείτε να εκτελέσετε σενάρια php από εκεί. Ωστόσο, συνιστώ να εγκαταστήσετε έναν τοπικό διακομιστή ιστού, πιστέψτε με, θα σας φανεί χρήσιμο περισσότερες από μία φορές.

Έχετε εγκαταστήσει λοιπόν έναν διακομιστή ιστού όπως ο Open Server, τι ακολουθεί; Στη συνέχεια, πρέπει να δημιουργήσετε έναν φάκελο όπου θα βρίσκονται τα σενάρια php σας. Στον ανοιχτό διακομιστή php, τα σενάρια εκτελούνται σε καταλόγους που βρίσκονται στο φάκελο domains. Υπάρχει ένας φάκελος localhost στον κατάλογο domains μετά την εγκατάσταση. Μπορείτε να δημιουργήσετε το πρώτο σας σενάριο php στο φάκελο path_to_open_server\domains\localhost. Μεταβείτε σε αυτόν τον φάκελο και δημιουργήστε ένα σενάριο php test.php. Ανοίξτε το μέσα επεξεργαστής κειμένου, ή notepad++ και γράψτε τον ακόλουθο κώδικα εκεί:

Αυτό το σενάριο php θα εμφανίσει απλώς τη γραμμή "Το πρώτο μου σενάριο php!" χρησιμοποιώντας τον τελεστή εξόδου "echo". Ο χειριστής "echo" στέλνει πληροφορίες κειμένουστο πρόγραμμα περιήγησης για εμφάνιση. Τώρα ας εκτελέσουμε το πρώτο μας σενάριο, για να το κάνουμε αυτό, βεβαιωθείτε ότι ο διακομιστής web εκτελείται. Ανοίξτε ένα πρόγραμμα περιήγησης και πληκτρολογήστε http://localhost/test.php στη γραμμή διευθύνσεων. Εάν βλέπετε τη γραμμή πολύτιμη "Το πρώτο μου σενάριο php!", τότε το σενάριο λειτούργησε. Αυτό είναι όλο για σήμερα, σας ευχαριστώ για την προσοχή σας.