array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'function.htmlspecialchars.php', 1 => 'htmlspecialchars', ), 'up' => array ( 0 => 'ref.strings.php', 1 => 'Dizge İşlevleri', ), 'prev' => array ( 0 => 'function.htmlspecialchars-decode.php', 1 => 'htmlspecialchars_decode', ), 'next' => array ( 0 => 'function.implode.php', 1 => 'implode', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'reference/strings/functions/htmlspecialchars.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
htmlspecialchars — Özel karakterleri HTML öğeleri haline getirir
$dizge
,$seçenekler
= ENT_QUOTES
| ENT_SUBSTITUTE
| ENT_HTML401
,$kodlama
= null
,$çifte_kodlama
= true
Bazı karakterler HTML'de özel anlama sahiptir ve anlamlarını korumaları için HTML öğesi olarak gösterilmesi gerekir. Bu işlev bu dönüşümleri yapılmış olarak bir dizge döndürür. Eğer ilişkili isimli öğelere sahip tüm girdi alt dizgelerinin dönüştürülmesi gerekiyorsa bu işlev yerine htmlentities() işlevi kullanılmalıdır.
If the input string passed to this function and the final document share the same character set, this function is sufficient to prepare input for inclusion in most contexts of an HTML document. If, however, the input can represent characters that are not coded in the final document character set and you wish to retain those characters (as numeric or named entities), both this function and htmlentities() (which only encodes substrings that have named entity equivalents) may be insufficient. You may have to use mb_encode_numericentity() instead.
Karakter | Karakterin karşılığı |
---|---|
& (ampersand) |
& |
" (çift tırnak) |
ENT_NOQUOTES belirtilmezse " atanır |
' (tek tırnak) |
' (ENT_HTML401 için) veya sadece ENT_QUOTES belirtildiği durumda ' (ENT_XML1 , ENT_XHTML veya ENT_HTML5 için)
|
< (küçüktür) |
< |
> (büyüktür) |
> |
dizge
Dönüştürülecek dizge.
seçenekler
Geçersiz kod dizilimlerinin, kullanılan belge türünün ve tırnakların nasıl ele alınacağını belirten aşağıdaki seçenekler bitsel VEYAlanarak
seçenekler
bağımsız değişkeninde belirtilebilir.
ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401
öntanımlıdır.
Sabit İsmi | Açıklama |
---|---|
ENT_COMPAT |
Sadece çift tırnaklar dönüştürülür, tek tırnaklara dokunulmaz. |
ENT_QUOTES |
Çift tırnaklara ilaveten tek tırnaklar da dönüştürülür. |
ENT_NOQUOTES |
Ne tek ne de çift tırnaklar dönüştürülür. |
ENT_IGNORE |
Geçersiz kod dizilimlerinde boş dizge döndürülmeyip seesizce yoksayma yoluna gidilir. » Güvenlikle ilgili etkiler olabileceğinden bu seçeneğin kullanımı önerilmemektedir. |
ENT_SUBSTITUTE |
Geçersiz kod dizilimi için boş bir dizge döndürülmeyip dizilimin yerine Unicode Değiştirme Karakteri (U+FFFD veya &#FFFD;) yerleştirilir. |
ENT_DISALLOWED |
Geçersiz kod dizilimini olduğu gibi bırakmak yerine Unicode Değiştirme Karakteri (U+FFFD veya &#FFFD;) ile değiştirilir. Örneğin, XML belgelerin gömülü harici içerikle iyi biçimliliğini sağlamak için bu seçenek kullanışlı olabilir. |
ENT_HTML401 |
Kod HTML 4.01 olarak ele alınır. |
ENT_XML1 |
Kod XML 1 olarak ele alınır. |
ENT_XHTML |
Kod XHTML olarak ele alınır. |
ENT_HTML5 |
Kod HTML 5 olarak ele alınır. |
karküm
Karakterleri dönüştürürken kullanılan kodlamayı tanımlayan seçimlik bağımsız değişken.
Belirtilmezse
kodlama
için
default_charset yapılandırma
seçeneğinin değeri öntanımlıdır.
Bu bağımsız değişken teknik olarak seçimlikse de kodunuz için gereken değeri atamanız gerekir. Çünkü default_charset yapılandırma seçeneğine hatalı bir değer atanmış olabilir.
Bu işlevin amacı gereği, ISO-8859-1
,
ISO-8859-15
, UTF-8
,
cp866
, cp1251
,
cp1252
ve KOI8-R
karakter
kümeleri, aynı konumları işgal eden
(htmlspecialchars() işlevinden etkilenen)
karakterler bakımından eşdeğerdir.
Aşağıdaki karakter kümeleri desteklenmektedir.
Karakter kümesi | Takma adı | Açıklama |
---|---|---|
ISO-8859-1 | ISO8859-1 | Batı Avrupa, Latin-1 |
ISO-8859-5 | ISO8859-5 | Az kullanılan kril küme (Latin/Cyrillic). |
ISO-8859-15 | ISO8859-15 | Doğu Avrupa, Latin-9. Euro işaretini ekler, Fransızca ve Fince harfler Latin-1'de (ISO-8859-1) yoktur. |
UTF-8 | ASCII uyumlu 8 bitlik çok baytlı Unicode. | |
cp866 | ibm866, 866 | DOS'a özgü Kril karakter kümesi. |
cp1251 | Windows-1251, win-1251, 1251 | Windows'a özgü Kril karakter kümesi. |
cp1252 | Windows-1252, 1252 | Doğu Avrupa için Windows'a özgü karakter kümesi. |
KOI8-R | koi8-ru, koi8r | Rusça. |
BIG5 | 950 | Geleneksel Çince, aslında Tayvan'da kullanılır. |
GB2312 | 936 | Basitleştirilmiş Çince, ulusal standart karakter kümesi. |
BIG5-HKSCS | Geleneksel Çince, Hong Kong eklentisi ile Big5. | |
Shift_JIS | SJIS, 932 | Japonca. |
EUC-JP | EUCJP, eucJP-win | Japonca. |
MacRoman | Mac OS tarafından kullanılmış karakter kümesi. | |
'' |
Boş bir dize, karakter kümesini, komut dosyası kodlamasından (Zend multibyte), default_charset ve geçerli yerel ayardan (bkz. nl_langinfo() ve setlocale()) algılamayı bu sırayla etkinleştirir. Önerilmez. |
Bilginize: Bunlardan başka karakter kümesi tanınmaz. Yerine öntanımlı karakter kümesi kullanılır ve bir uyarı çıktılanır.
çifte_kodlama
Bu bağımsız değişkende false
belirtilirse zaten kodlanmış HTML öğeleri
tekrar kodlanmaz. Öntanımlı olarak herşey dönüştürülür.
Dönüştürülen dizge.
Belirtilen kodlama
altında belirtilen
dizge
geçersiz bir kod dizilimi içeriyorsa,
ENT_IGNORE
veya ENT_SUBSTITUTE
seçenekleri atanmadığı takdirde boş dizge döndürülür.
Sürüm: | Açıklama |
---|---|
8.1.0 |
seçenekler bağımsız değişkeninin öntanımlı değeri
ENT_COMPAT iken ENT_QUOTES |
ENT_SUBSTITUTE | ENT_HTML401
oldu.
|
Örnek 1 - htmlspecialchars() örneği
<?php
$yenisi = htmlspecialchars("<a href='dnm'>Deneme</a>", ENT_QUOTES);
echo $yenisi; // <a href='dnm'>Deneme</a>
?>
Bilginize:
Bu işlev yukarıda listelenenler dışında hiçbir şeyi dönüştürmez. Tam bir dönüşüm istiyorsanız htmlentities() işlevine bakınız.
Bilginize:
Tutarsız
seçenekler
durumunda, şu kurallar uygulanır:
ENT_COMPAT
,ENT_QUOTES
,ENT_NOQUOTES
seçeneklerinden hiçbiri mevcut değilse,ENT_NOQUOTES
öntanımlıdır.ENT_COMPAT
,ENT_QUOTES
,ENT_NOQUOTES
seçeneklerinden birden fazlası mevcutsa, en yüksek önceliğiENT_QUOTES
alır ve bunuENT_COMPAT
takip eder.ENT_HTML401
,ENT_HTML5
,ENT_XHTML
,ENT_XML1
seçeneklerinden hiçbiri mevcut değilseENT_HTML401
öntanımlıdır.ENT_HTML401
,ENT_HTML5
,ENT_XHTML
,ENT_XML1
seçeneklerinden birden fazlası mevcutsa, en yüksek önceliğiENT_HTML5
alır ve bunuENT_XHTML
,ENT_XML1
veENT_HTML401
takip eder.ENT_DISALLOWED
,ENT_IGNORE
,ENT_SUBSTITUTE
seçeneklerinden birden fazlası mevcutsa, en yüksek önceliğiENT_IGNORE
alır ve bunuENT_SUBSTITUTE
takip eder.