Sen yazışmalar karakterin listesini alabilirsiniz => htmlentities
, with the function get_html_translation_table
a> tarafından kullanılan varlık; Bu kodu göz önünde bulundurun:
$list = get_html_translation_table(HTML_ENTITIES);
var_dump($list);
(You might want to check the second parameter to that function in the manual -- maybe you'll need to set it to a value different than the default one)
Size böyle bir şey elde edeceksiniz:
array
' ' => string ' ' (length=6)
'¡' => string '¡' (length=7)
'¢' => string '¢' (length=6)
'£' => string '£' (length=7)
'¤' => string '¤' (length=8)
....
....
....
'ÿ' => string 'ÿ' (length=6)
'"' => string '"' (length=6)
'<' => string '<' (length=4)
'>' => string '>' (length=4)
'&' => string '&' (length=5)
Şimdi, istemediğiniz yazışmalarınında kaldırın:
unset($list['"']);
unset($list['<']);
unset($list['>']);
unset($list['&']);
Listeniz, şimdi, tüm yazışmalar karakteri vardır = kodlamak istemiyorum birkaç karakter dışında Htmlentites tarafından kullanılan> varlık.
Ve şimdi, sadece anahtarları ve değerleri listesini çıkarmak zorunda:
$search = array_keys($list);
$values = array_values($list);
Ve, son olarak, değiştirme yapmak için str_replace kullanabilirsiniz:
$str_in = '<p><font style="color:#FF0000">Camión español</font></p>';
$str_out = str_replace($search, $values, $str_in);
var_dump($str_out);
Ve sen olsun:
string '<p><font style="color:#FF0000">Camión español</font></p>' (length=84)
Hangi istediğini gibi görünüyor ;-)
Edit : well, except for the encoding problem (damn UTF-8, I suppose -- I'm trying to find a solution for that, and will edit again)
Dakika sonra ikinci düzenleme çift: görünüyor size str_replace
:-( çağırmadan önce, utf8_encode
$search
listesinde kullanmak zorunda olacak
Hangi böyle bir şey kullanmak demektir:
$search = array_map('utf8_encode', $search);
array_keys
için çağrı ve çağrısı arasında str_replace
.
Ve bu sefer, gerçekten ne istediğini almalısınız:
string '<p><font style="color:#FF0000">Camión español</font></p>' (length=70)
And here is the full portion of code :
$list = get_html_translation_table(HTML_ENTITIES);
unset($list['"']);
unset($list['<']);
unset($list['>']);
unset($list['&']);
$search = array_keys($list);
$values = array_values($list);
$search = array_map('utf8_encode', $search);
$str_in = '<p><font style="color:#FF0000">Camión español</font></p>';
$str_out = str_replace($search, $values, $str_in);
var_dump($str_in, $str_out);
Ve tam çıkış:
string '<p><font style="color:#FF0000">Camión español</font></p>' (length=58)
string '<p><font style="color:#FF0000">Camión español</font></p>' (length=70)
This time, it should be ok ^^
It doesn't really fit in one line, is might not be the most optimized solution ; but it should work fine, and has the advantage of allowing you to add/remove any correspondance character => entity you need or not.
Eğlenin!