Forum Webscript.Ru
Программирование => PHP => Тема начата: alex-party от 19 Июля 2003, 11:14:58
-
Люди добрые! Помогите!
Bот етой функцией я перевожу строку в HTML.
------------------------
function xmlentities($string, $quote_style=ENT_COMPAT)
{
$trans = get_html_translation_table(HTML_ENTITIES, $quote_style);
foreach ($trans as $key => $value)
$trans[$key] = \'\'.ord($key).\';\';
return strtr($string, $trans);
}
------------------------
Например: xmlentities("привет"); => выдаст: #1087;#1088;#1080;#1074;#1077;#1090;
А КАК ТЕПЕРЬ ПЕРЕВЕСТИ ОБРАТНО?
ВСЕ ПЕРЕПРОБЫВАЛ - НУ НИ КАК НЕПОЛУЧАЕТСЯ.....
-
Хинт: функция [p]chr[/p] - обратная функции ord.
[p]array_flip[/p] тебе тоже пригодится.
-
:) Спасибо за подсказку. Вот я переделал - все получилось. Протестировал - рботает на все 100:super: Вот как выгледят ети ф-ии:
function encode($str, $quote_style=ENT_COMPAT){
$trans = get_html_translation_table(HTML_ENTITIES);
$encoded = strtr($str, $trans);
return $encoded;
}
function decode($str, $quote_style=ENT_COMPAT){
$trans = get_html_translation_table(HTML_ENTITIES);
$trans = array_flip($trans);
$encoded = strtr($str, $trans);
$original = strtr($encoded, $trans);
return $original;
}
Пример:
encode("привет"); => выдаст: #1087;#1088;#1080;#1074;#1077;#1090;
decode("#1087;#1088;#1080;#1074;#1077;#1090;
"); => выдаст: "привет"