PHP htmlspecialchars() İşlev
Örnek
Önceden tanımlanmış "<" (küçüktür) ve ">" (büyüktür) karakterlerini HTML varlıklarına dönüştürün:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
Yukarıdaki kodun HTML çıktısı şöyle olacaktır (Kaynağı Görüntüle):
<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
Yukarıdaki kodun tarayıcı çıktısı şöyle olacaktır:
This is some <b>bold</b> text.
Tanım ve Kullanım
htmlspecialchars() işlevi, önceden tanımlanmış bazı karakterleri HTML varlıklarına dönüştürür.
Önceden tanımlanmış karakterler şunlardır:
- & (ve işareti) & olur
- " (çift tırnak) "
- ' (tek tırnak) ' olur;
- < (küçüktür) <
- > (büyüktür) >
İpucu: Özel HTML varlıklarını tekrar karakterlere dönüştürmek için htmlspecialchars_decode() işlevini kullanın.
Sözdizimi
htmlspecialchars(string,flags,character-set,double_encode)
Parametre Değerleri
Parameter | Description |
---|---|
string | Required. Specifies the string to convert |
flags | Optional. Specifies how to handle quotes, invalid encoding and the used document type. The available quote styles are:
Invalid encoding:
Additional flags for specifying the used doctype:
|
character-set | Optional. A string that specifies which character-set to use. Allowed values are:
Note: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8. |
double_encode | Optional. A boolean value that specifies whether to encode existing html entities or not.
|
Teknik detaylar
Geri dönüş değeri: | Dönüştürülen dizeyi döndürür Dize geçersiz kodlama içeriyorsa , ENT_IGNORE veya ENT_SUBSTITUTE bayraklarından biri ayarlanmadıkça boş bir dize döndürür |
---|---|
PHP Sürümü: | 4+ |
Değişiklik günlüğü: | PHP 5.6 - Karakter kümesi
parametresinin varsayılan değeri, varsayılan karakter kümesinin değeriyle değiştirildi (yapılandırmada). PHP 5.4 - Karakter seti parametresinin varsayılan değeri UTF-8 olarak değiştirildi. PHP 5.4 - ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 ve ENT_XHTML eklendi PHP 5.3 - ENT_IGNORE sabiti eklendi. PHP 5.2.3 - double_encode parametresi eklendi. PHP 4.1 - Karakter seti parametresi eklendi. |
Daha fazla örnek
Örnek
Bazı önceden tanımlanmış karakterleri HTML varlıklarına dönüştürün:
<?php
$str = "Jane & 'Tarzan'";
echo htmlspecialchars($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // Does not convert any quotes
?>
Yukarıdaki kodun HTML çıktısı şöyle olacaktır (Kaynağı Görüntüle):
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
Yukarıdaki kodun tarayıcı çıktısı şöyle olacaktır:
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Örnek
Çift tırnakları HTML varlıklarına dönüştürün:
<?php
$str = 'I love "PHP".';
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
?>
Yukarıdaki kodun HTML çıktısı şöyle olacaktır (Kaynağı Görüntüle):
<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>
Yukarıdaki kodun tarayıcı çıktısı şöyle olacaktır:
I love "PHP".
❮ PHP Dize Referansı