Constants PHP
Οι σταθερές στην PHP και οι τύποι τους
Οι σταθερές είναι σαν τις μεταβλητές μόνο που η τιμή που παίρνουν δεν μπορεί να αλλάξει,
δεν έχουν το σύμβολο $ στην αρχή του ονόματός τους όπως οι μεταβλητές.
Μια διαφορά τους από τις μεταβλητές είναι ότι αυτές θεωρούνται αυτόματα καθολικές (global) σ’ όλο το script.
Μία απλή τιμή στην PHP μπορεί να παρουσιασθεί σαν μία σταθερά. Μια σταθερά είναι η ίδια καθ’ όλη τη διάρκεια εκτέλεσης ενός προγράμματος. Από προεπιλογή μία σταθερά κάνει διάκριση πεζών – κεφαλαίων. Κατά σύμβαση, μία σταθερά παίρνει όνομα πάντα στα κεφαλαία. Τ’ όνομα μίας σταθεράς ξεκινάει πάντα μ’ ένα γράμμα ή με κάτω παύλα, ακολουθούμενα από έναν αριθμό γραμμάτων, αριθμούς ή κάτω παύλες. Αν έχετε ορίσει μία σταθερά δεν μπορεί ν’ αλλάξει τιμή ή να ξεορισθεί.
Για να ορισθεί μία σταθερά χρησιμοποιούμε τη συνάρτηση define() και για να δείτε την τιμή της απλώς πρέπει να την καλέσετε με τ’ όνομά της. Αντίθετα με τις μεταβλητές δε χρειάζεται να χρησιμοποιήσετε το σύμβολο του δολλαρίου($). Επίσης μπορείτε να χρησιμοποιήσετε τη συνάρτηση constant() για να διαβάσετε την τιμή μιας σταθεράς.
Η συνάρτηση Constant()
Όπως δείχνει και τ’ όνομά της η συνάρτηση αυτή θα επιστρέψει πίσω την τιμή της σταθεράς.
Αυτό είναι χρήσιμο όταν δε γνωρίζετε τ’ όνομα της σταθεράς, π.χ. όταν βρίσκετε μέσα σε μία μεταβλητή, ή βγαίνει από μία συνάρτηση.
Παραδείγματα
<?php define("MINSIZE", 50); echo MINSIZE; echo constant("MINSIZE"); // same thing as the previous line ?>
Μόνο δεδομένα τύπου Boolean, ακέραιους, αλφαριθμητικά σύνολα, δεκαδικούς, μπορεί να περιέχουν οι σταθερές.
Οι διαφορές ανάμεσα στις μεταβλητές και τις σταθερές
- Δε χρειάζεται να μπει το σύμβολο του δολαρίου($) πριν από μία σταθερά, όπως γίνεται στις μεταβλητές
- Οι σταθερές δεν μπορούν ν’ ορισθούν με απλή ανάθεση, αλλά ορίζεται η τιμή τους με την συνάρτηση define()
- Οι σταθερές μπορούν να ορισθούν και να καλεστούν οπουδήποτε, σε αντίθεση με τις μεταβλητές.
- Οι σταθερές ορίζονται μια φορά και δεν μπορούν να ξανά οριστούν ή να ξεοριστούν
Έγκυρα και μη έγκυρα ονόματα σταθερών
// Valid constant names define("ONE", "first thing"); define("TWO2", "second thing"); define("THREE_3", "third thing"); define("__THREE__", "third value"); // Invalid constant names define("2TWO", "second thing");
Προκαθορισμένες σταθερές
Η PHP περιέχει ένα μεγάλο αριθμό προκαθορισμένων σταθερών που μπορούν να χρησιμοποιηθούν σε κάθε πρόγραμμα
Υπάρχουν πέντε τέτοιες σταθερές που αλλάζουν ανάλογα με το που χρησιμοποιούνται. Για παράδειγμα η σταθερά _LINE_ γυρίζει πίσω μία τιμή ανάλογα με τη γραμμή που εμφανίζεται στο πρόγραμμα. Αυτές οι ειδικές σταθερές δεν κάνουν διάκριση πεζών και κεφαλαίων.
Μερικές «μαγικές» σταθερές δίνονται παρακάτω:
Α/Α |
ΟΝΟΜΑ ΚΑΙ ΠΕΡΙΓΡΑΦΗ |
1 | _LINE_
Ο τρέχων αριθμός γραμμής του αρχείου |
2 | _FILE_
Η πλήρης διαδρομή ενός αρχείου και τ’ όνομά του. Από την έκδοση 4.0.2 η σταθερά αυτή επιστρέφει την ακριβής διαδρομή του αρχείου ενώ σε παλιότερες εκδόσεις γύριζε μία σχετική διαδρομή κάτω από προϋποθέσεις |
3 | _FUNCTION_
T’ όνομα της συνάρτησης. (Προστέθηκε στην έκδοση 4.3.0) Από την PHP 5 αυτή η σταθερά επιστρέφει το όνομα της συνάρτησης όπως δηλώθηκε (με διάκριση πεζών-κεφαλαίων). Στην PHP 4 η τιμή του είναι πάντα πεζή. |
4 | _CLASS_
Τ’ όνομα της κλάσης (Προστέθηκε στην PHP 4.3.0) Από την PHP 5 αυτή η σταθερά επιστρέφει το όνομα της κλάσης όπως δηλώθηκε (με διάκριση πεζών-κεφαλαίων). Στην PHP 4 η τιμή του είναι πάντα πεζή. |
5 | _METHOD_
Τ΄όνομα της μεθόδου κλάσης. (Προστέθηκε στην PHP 5.0.0) Το όνομα της μεθόδου επιστρέφεται όπως είχε δηλωθεί (με διάκριση πεζών-κεφαλαίων). |
Μπορείτε να ενημερωθείτε για την php στο σχετικό θεματικό τμήμα του blog μας που μπορείτε να δείτε εδώ.
Μπορείτε να μάθετε περισσότερα για την δημοφιλή γλώσσα php που χρησιμοποιείται ευρέως στην κατασκευή ιστοσελίδων μέσα από μια σειρά από σεμινάρια εξ’ αποστάσεως που παρέχει το Εργαστήριο ΤΠΕ Ήρων / Lab ICT Heron
Μετάφραση: Χάιδου Ελένη