htmlspecialchars

(PHP 3, PHP 4, PHP 5)

htmlspecialchars --  Μετατρέψτε τους ειδικούς χαρακτήρες σε HTML αντικείμενα

Περιγραφή

string htmlspecialchars ( string string [, int quote_style [, string charset]] )

Κάποιοι χαρακτήρες έχουν μία ιδιαίτερη σημασία στην HTML, και θα έπρεπε να αναπαρίστανται από αντικείμενα της HTML προκειμένου να διατηρήσουν τη σημασία αυτή. Η συνάρτηση αυτή επιστρέφει ένα string, το οποίο έχει κάποιες από τις μετατροπές υλοποιημένες. Αυτές οι μεταφράσεις είναι οι πιο χρήσιμες που γίνοννται κάθε μέρα στο web programming. Εάν επιθυμείτε να μεταφραστούν όλα τα αντικείμενα HTML τότε χρησιμοποιείστε τη συνάρτηση htmlentities().

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

Οι μεταφράσεις που υλοποιούνται είναι οι ακόλουθες:

ÐáñÜäåéãìá 1. Παράδειγμα της htmlspecialchars()

<?php
$new
= htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo
$new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

Παρατηρείστε ότι αυτή η συνάρτηση δε μεταφράζει κάτι άλλο εκτός αυτών που προαναφέρθηκαν. Για πλήρη μετάφραση οντοτήτων ανατρέξτε στη συνάρτηση htmlentities(). Η υποστήρηξη της προαιρετικής δεύτερης παραμέτρου προστέθηκε στην PHP 3.0.17 και την PHP 4.0.3.

Το τρίτο όρισμα charset ορίζει το σύνολο χαρακτήρων που θα χρησιμοποιηθούν κατά τη μετατροπή. Το προκαθορισμένο σύνολο είναι το ISO-8859-1. Η υποστήριξη της τρίτης παραμέτρου προστέθηκε στην PHP 4.1.0.

Η έκδοση PHP 4.3.0 και οι νεώτερες αυτής υποστηρίζουν τα ακόλουθα σύνολα χαρακτήρων:

Ðßíáêáò 1. Υποστηριζόμενα σύνολα χαρακτήρων

Σύνολο χαρακτήρωνΔεύτερη ονομασίαΠεριγραφή
ISO-8859-1ISO8859-1 Western European, Latin-1
ISO-8859-15ISO8859-15 Western European, Latin-9. Περιέχει επιπλέον το σύμβολο του Ευρώ, καθώς επίσης γαλλικά και φινλανδικά γράμματα, που δεν περιλαμβάνονται στο Latin-1(ISO-8859-1).
UTF-8  Συμβατό με ASCII, multi-byte 8-bit Unicode.
cp866ibm866, 866 Σύνολο χαρακτήρων του DOS για ρώσικα. Αυτό το σύνολο χαρακτήρων υποστηρίζεται από την έκδοση 4.3.2 και μετά.
cp1251Windows-1251, win-1251, 1251 Σύνολο χαρακτήρων των Windows για ρώσικα. Αυτό το σύνολο χαρακτήρων υποστηρίζεται από την έκδοση 4.3.2 και μετά.
cp1252Windows-1252, 1252 Σύνολο χαρακτήρων των Windows για Western European.
KOI8-Rkoi8-ru, koi8r Ρώσικα. Αυτό το σύνολο χαρακτήρων υποστηρίζεται από την έκδοση 4.3.2 και μετά.
BIG5950 Παραδοσιακά κινέζικα, κυρίως αυτά που χρησιμοποιούνται στην Ταϊβάν.
GB2312936 Απλοποιημένα κινέζικα, το εθνικά χρησιμοποιούμενο σύνολο χαρακτήρων.
BIG5-HKSCS  Big5 με επεκτάσεις για το Hong Kong, παραδοσικά κινέζικα.
Shift_JISSJIS, 932 Japanese
EUC-JPEUCJP Γιαπωνέζικα

Óçìåßùóç: Στη θέση οποιουδήποτε συνόλου χαρακτήρων που δεν αναγνωρίζεται θα χρησιμοποιηθεί το ISO-8859-1.

Ανατρέξτε επίσης στις: get_html_translation_table(), htmlentities(), και nl2br().