PHP: Η σύνταξη HEREDOC ή πώς γράφουμε μεγάλο κείμενο


nc
Δημοσίευση: • Share Article:

@Η σύνταξη heredoc είναι μια πολύ καλή εναλλακτική λύση όταν έχουμε να γράψουμε πολύ κείμενο μέσα στην PHP, αλλά χωρίς να χρειάζεται να προσθέτουμε συνέχεια χαρακτήρες διαφυγής. Με απλά λόγια, μπορούμε να ορίσουμε τον δικό μας οριοθέτη (delimiter), όπως για παράδειγμα τα γράμματα “EOT” (end of text), και μπορούμε μετά να γράψουμε όσα διπλά και μονά εισαγωγικά θέλουμε μέσα στο σώμα του κειμένου. Το κείμενο απλά τελειώνει όταν συναντήσει και πάλι τον οριοθέτη EOT. 
Θέλει μόνο προσοχή στο πώς θα γράψουμε τον οριοθέτη στην αρχή και στο τέλος του κειμένου. Ο οριοθέτης πρέπει να γραφεί στην πρώτη γραμμή μετά από τους χαρακτήρες <<< αλλά και στην τελευταία γραμμή, όπου πρέπει να είναι μόνος του και να ξεκινάει από την πρώτη στήλη χωρίς κενά γύρω του. Ακολουθεί ένα παράδειγμα :

 
$mystring = <<<EOT
Το κείμενο αυτό της PHP
είναι απολύτως ελεύθερο
και μπορούμε να γράψουμε "διπλά"
και 'μονά εισαγωγικά',
ακόμα και μεταβλητές $variables, οι οποίες θα
αντικατασταθούν με τις τιμές τους,
μπορούμε ακόμα να γράψουμε και τους χαρακτήρες EOT,
εφόσον δεν βρίσκονται σε μια γραμμή, όπως εδώ :
EOT;
?>

Κάποια πράγματα που πρέπει να γνωρίζουμε σχετικά με τη σύνταξη heredoc είναι τα εξής :
Ως οριοθέτη (delimiter) μπορούμε να χρησιμοποιήσουμε όποιο κείμενο θέλουμε και το “EOT” είναι απλά ένα παράδειγμα.
Θα πρέπει να χρησιμοποιήσουμε τους χαρακτήρες <<< πριν από τον οριοθέτη, ώστε να καταλάβει η PHP από πού ξεκινάει η σύνταξη heredoc.
Για να εμφανίσουμε το σύμβολο $, θα πρέπει να χρησιμοποιήσουμε τον αντίστοιχο χαρακτήρα διαφυγής για να μην μπερδευτεί η PHP και περάσει το κείμενο ως μεταβλητή.
Μπορούμε να χρησιμοποιήσουμε τον οριοθέτη που επιλέξαμε οπουδήποτε μέσα στο κείμενο, αλλά όχι στην πρώτη στήλη μιας καινούργιας γραμμής.
Στο τέλος του κειμένου, θα πρέπει να γράψουμε τον οριοθέτη χωρίς κενά γύρω του και ακολουθούμενο από το σύμβολο ; (semi-colon) για να τελειώσει η εντολή.

Foreach programming

Εγγραφείτε για να βλέπετε τα εξειδικευμένα άρθρα.