Συναρτήσεις συμβολοσειράς PHP που εξηγούνται με παραδείγματα
⚡ Έξυπνη Σύνοψη
Οι συμβολοσειρές στην PHP είναι ταξινομημένες συλλογές χαρακτήρων και ένας από τους βασικούς τύπους δεδομένων της γλώσσας. Αυτή η αναλυτική παρουσίαση δείχνει τους τέσσερις τρόπους δημιουργίας συμβολοσειρών, μονών εισαγωγικών, διπλών εισαγωγικών, heredoc και nowdoc, και στη συνέχεια παρουσιάζει τις πιο χρήσιμες ενσωματωμένες συναρτήσεις συμβολοσειρών με παραδείγματα.

Τι είναι το String στην PHP;
Μια συμβολοσειρά είναι μια συλλογή χαρακτήρων. Το String είναι ένας από τους τύπους δεδομένων που υποστηρίζονται από την PHP.
Οι μεταβλητές συμβολοσειράς μπορούν να περιέχουν αλφαριθμητικούς χαρακτήρες. Οι συμβολοσειρές δημιουργούνται όταν:
- Δηλώνετε μια μεταβλητή και της αντιστοιχίζετε χαρακτήρες συμβολοσειράς
- Χρησιμοποιείτε απευθείας συμβολοσειρές PHP με την εντολή echo.
- Οι συναρτήσεις συμβολοσειράς PHP είναι γλωσσικές δομές που σας βοηθούν να εργαστείτε με κείμενο.
- Το να μάθετε πώς λειτουργούν οι συμβολοσειρές στην PHP και πώς να τις χειρίζεστε θα σας κάνει έναν πολύ αποτελεσματικό και παραγωγικό προγραμματιστή.
PHP Δημιουργία συμβολοσειρών χρησιμοποιώντας μεμονωμένα εισαγωγικά με Παράδειγμα
Ας δούμε τώρα τους τέσσερις διαφορετικούς τρόπους δημιουργίας και χειρισμού συμβολοσειρών στην PHP.
Δημιουργία συμβολοσειρών PHP χρησιμοποιώντας μονά εισαγωγικά: ο απλούστερος τρόπος για να δημιουργήσετε μια συμβολοσειρά είναι να χρησιμοποιήσετε μονά εισαγωγικά.
Ας δούμε ένα παράδειγμα που δημιουργεί μια απλή συμβολοσειρά σε PHP.
<?php
var_dump('You need to be logged in to view this page');
?>
Παραγωγή:
string(42) "You need to be logged in to view this page"
Εάν το μεμονωμένο εισαγωγικό είναι μέρος της τιμής συμβολοσειράς, μπορεί να διαφύγει χρησιμοποιώντας την ανάστροφη κάθετο.
Ο παρακάτω κώδικας δείχνει πώς να ξεφύγετε από ένα μεμονωμένο απόσπασμα.
<?php echo 'I \'ll be back after 20 minutes'; ?>
Παραγωγή:
I'll be back after 20 minutes
PHP Δημιουργία συμβολοσειρών με χρήση Double αποσπάσματα με Παράδειγμα
Double Τα εισαγωγικά χρησιμοποιούνται για τη δημιουργία σχετικά σύνθετων συμβολοσειρών σε σύγκριση με τα μεμονωμένα εισαγωγικά.
Τα ονόματα των μεταβλητών μπορούν να χρησιμοποιηθούν μέσα σε διπλά εισαγωγικά και οι τιμές τους θα εμφανίζονται.
Ας δούμε ένα παράδειγμα.
<?php $name = 'Alicia'; echo "$name is friends with kalinda"; ?>
ΕΔΩ,
- Το παραπάνω παράδειγμα δημιουργεί μια απλή συμβολοσειρά με την τιμή της Alicia.
- Το όνομα της μεταβλητής χρησιμοποιείται στη συνέχεια στη συμβολοσειρά που δημιουργείται χρησιμοποιώντας διπλά εισαγωγικά και η τιμή της παρεμβάλλεται κατά τον χρόνο εκτέλεσης.
Παραγωγή:
Alicia is friends with kalinda
Εκτός από την παρεμβολή μεταβλητών, η συμβολοσειρά διπλών εισαγωγικών μπορεί επίσης να διαφύγει από περισσότερους ειδικούς χαρακτήρες όπως "\n για αλλαγή γραμμής, \$ για το σύμβολο του δολαρίου" κ.λπ.
Περισσότερα παραδείγματα. Ας υποθέσουμε ότι έχουμε τον ακόλουθο κώδικα.
<?php $pwd = "pas$word"; echo $pwd; ?>
Παραγωγή:
NOTICE : Undefined variable pas
Η εκτέλεση του παραπάνω κώδικα εμφανίζει την ειδοποίηση "Notice: Undefined variable".
Αυτό συμβαίνει επειδή το $word αντιμετωπίζεται ως α μεταβλητή.
Αν θέλουμε το σύμβολο του δολαρίου να αντιμετωπίζεται ως κυριολεκτική αξία, πρέπει να το ξεφύγουμε.
<?php $word = "word"; $pwd = "pas\$word"; echo $pwd; ?>
Παραγωγή:
pas$word
PHP Heredoc με Παράδειγμα
Η μεθοδολογία heredoc χρησιμοποιείται για τη δημιουργία αρκετά σύνθετων συμβολοσειρών σε σύγκριση με τα διπλά εισαγωγικά.
Το Heredoc υποστηρίζει όλα τα χαρακτηριστικά των διπλών εισαγωγικών και επιτρέπει τη δημιουργία τιμών συμβολοσειρών με περισσότερες από μία γραμμές χωρίς συνένωση συμβολοσειρών PHP.
Η χρήση διπλών εισαγωγικών για τη δημιουργία συμβολοσειρών που έχουν πολλές γραμμές δημιουργεί ένα σφάλμα.
Μπορείτε επίσης να χρησιμοποιήσετε διπλά εισαγωγικά μέσα χωρίς escaping Θεμ.
Το παρακάτω παράδειγμα δείχνει πώς χρησιμοποιείται η μέθοδος heredoc για τη δημιουργία τιμών συμβολοσειρών.
<?php $baby_name = "Shalon"; echo <<<EOT When $baby_name was a baby, She used to look like a "boy". EOT; ?>
ΕΔΩ,
<< είναι ο οριοθέτης χορδών.
Το ΕΟΤ είναι το ακρωνύμιο για το τέλος του κειμένου.
Θα πρέπει να οριστεί σε ξεχωριστή γραμμή στην αρχή της συμβολοσειράς και στο τέλος.
Σημείωση: μπορείτε να χρησιμοποιήσετε οτιδήποτε θέλετε αντί για EOT.
Παραγωγή:
When Shalon was a baby, She used to look like a "boy".
PHP Nowdoc με Παράδειγμα
Η μέθοδος δημιουργίας συμβολοσειρών nowdoc είναι παρόμοια με τη μέθοδο heredoc αλλά λειτουργεί με τον ίδιο τρόπο που λειτουργούν τα μονά εισαγωγικά.
Δεν πραγματοποιείται ανάλυση μέσα στο nowdoc.
Το Nowdoc είναι ιδανικό όταν εργάζεστε με ακατέργαστα δεδομένα που δεν χρειάζονται ανάλυση.
Ο παρακάτω κώδικας δείχνει την υλοποίηση του nowdoc.
<?php $baby_name = "Shalon"; $my_variable = <<<'EOT' When $baby_name was a baby, She used to look like a "boy". EOT; echo $my_variable; ?>
Παραγωγή:
When $baby_name was a baby, She used to look like a "boy".
Παραδείγματα συναρτήσεων συμβολοσειράς PHP
Οι συναρτήσεις συμβολοσειράς στην PHP χρησιμοποιούνται για τον χειρισμό τιμών συμβολοσειρών.
Θα εξετάσουμε τώρα μερικές από τις συνήθεις συναρτήσεις συμβολοσειρών (string functions) που χρησιμοποιούνται στην PHP.
| Λειτουργία | Περιγραφή | Παράδειγμα | Παραγωγή |
|---|---|---|---|
| strtolower | Χρησιμοποιείται για τη μετατροπή όλων των χαρακτήρων συμβολοσειράς σε πεζά γράμματα | echo strtolower('Βενιαμίν'); | βγάζει Benjamin |
| στρτούπερ | Χρησιμοποιείται για τη μετατροπή όλων των χαρακτήρων συμβολοσειράς σε κεφαλαία γράμματα | echo strtoupper('George w bush'); | εξόδους GEORGE W BUSH |
| strlen | Η συνάρτηση μήκους συμβολοσειράς χρησιμοποιείται για την καταμέτρηση του αριθμού των χαρακτήρων σε μια συμβολοσειρά. Μετρώνται επίσης τα κενά μεταξύ των χαρακτήρων. | echo strlen('Ηνωμένες Πολιτείες της Αμερικής'); | 24 |
| εκραγεί | Χρησιμοποιείται για τη μετατροπή συμβολοσειρών σε μεταβλητή πίνακα | $settings = explode(';', "host=localhost; db=sales; uid=root; pwd=demo"); print_r($settings); | Πίνακας ( [0] => host=localhost [1] => db=sales [2] => uid=root [3] => pwd=demo ) |
| substr | Χρησιμοποιείται για την επιστροφή μέρους της συμβολοσειράς. Δέχεται τρεις βασικές παραμέτρους: τη συμβολοσειρά που θα συντομευτεί, την αρχική θέση και τον αριθμό των χαρακτήρων που θα επιστραφούν. | $my_var = 'Αυτή είναι μια πολύ μεγάλη πρόταση που θέλω να συντομεύσω';echo substr($my_var,0, 12).'…'; | Αυτό είναι ένα ρε… |
| str_replace | Χρησιμοποιείται για τον εντοπισμό και την αντικατάσταση καθορισμένων τιμών συμβολοσειράς σε μια δεδομένη συμβολοσειρά. λειτουργία δέχεται τρία ορίσματα: το κείμενο που θα αντικατασταθεί, το κείμενο αντικατάστασης και το κείμενο που αναλύεται. | echo str_replace ('the', 'αυτό', 'ο φορητός υπολογιστής είναι πολύ ακριβός'); | αυτός ο φορητός υπολογιστής είναι πολύ ακριβός |
| strpos | Χρησιμοποιείται για τον εντοπισμό και την επιστροφή της θέσης ενός ή περισσότερων χαρακτήρων μέσα σε μια συμβολοσειρά. Αυτή η συνάρτηση δέχεται δύο ορίσματα. | echo strpos('Προγραμματισμός PHP','Pro'); | 4 |
| sha1 | Χρησιμοποιείται για τον υπολογισμό του κατακερματισμού SHA-1 μιας τιμής συμβολοσειράς | echo sha1('password'); | 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 |
| md5 | Χρησιμοποιείται για τον υπολογισμό του hash MD5 μιας τιμής συμβολοσειράς | echo md5('password'); | 5f4dcc3b5aa765d61d8327deb882cf99 |
| str_word_count | Χρησιμοποιείται για τη μέτρηση του αριθμού των λέξεων σε μια συμβολοσειρά. | echo str_word_count('Αυτή είναι μια πολύ μεγάλη πρόταση που θέλω να συντομεύσω'); | 12 |
| ucfirst | Κάντε τον πρώτο χαρακτήρα μιας συμβολοσειράς με κεφαλαία γράμματα | echo ucfirst('respect'); | Εκροές Σεβασμός |
| πρώτα | Κάντε τον πρώτο χαρακτήρα μιας συμβολοσειράς με πεζά γράμματα | echo lcfirst('RESPECT'); | Έξοδοι RESPECT |


