|
|
|
| Привет. Надо переделать символы в html код.
чтобы получилось так:
текст -> текст
|
функции вроде нет. | |
|
|
|
|
|
|
|
для: Neokortex
(02.09.2010 в 18:09)
| | html entities decode | |
|
|
|
|
|
|
|
для: Красная_шляпа
(02.09.2010 в 18:22)
| | не работает | |
|
|
|
|
|
|
|
для: neokortex
(02.09.2010 в 18:42)
| | html entities encode
http://php.net/manual/en/function.htmlentities.php | |
|
|
|
|
|
|
|
для: Красная_шляпа
(02.09.2010 в 19:36)
| | нашел класс
class HtmlEnc{
private static function uniord($c) {
$ud = 0;
if (ord($c{0}) >= 0 && ord($c{0}) <= 127) $ud = ord($c{0});
if (ord($c{0}) >= 192 && ord($c{0}) <= 223) $ud = (ord($c{0})-192)*64 + (ord($c{1})-128);
if (ord($c{0}) >= 224 && ord($c{0}) <= 239) $ud = (ord($c{0})-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128);
if (ord($c{0}) >= 240 && ord($c{0}) <= 247) $ud = (ord($c{0})-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128);
if (ord($c{0}) >= 248 && ord($c{0}) <= 251) $ud = (ord($c{0})-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128);
if (ord($c{0}) >= 252 && ord($c{0}) <= 253) $ud = (ord($c{0})-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128);
if (ord($c{0}) >= 254 && ord($c{0}) <= 255) $ud = false; // error
return $ud;
}
static function toHtml($str, $code=true){
$html_str = "";
while (strlen($str) > 0) {
preg_match("/^(.)(.*)$/u", $str, $match);
$test = utf8_decode($match[1]);
if ($test != "?")
$html_str .= htmlentities(htmlentities($test));
else if (strlen($match[1]) > 1)
$html_str .= "&#".self::uniord($match[1]).";";
else
$html_str .= htmlentities(htmlentities($match[1]));
$str = $match[2];
};
if ($code==false) {
$html_str = preg_replace("/&/", "", $html_str);
$html_str = preg_replace("/\#(.+?);$/", "\\1", $html_str);
};
return $html_str;
}
};
|
echo HtmlEnc::toHtml('текст');
PS Спасибо google.com | |
|
|
|
|
|
|
|
для: neokortex
(02.09.2010 в 20:12)
| | >> google.com
Насколько я знаю, напрямую туда зайти нельзя. По крайней мере у меня. Когда пытаюсь зайти на google.com, перекидывает на google.com.ua. | |
|
|
|
|
|
|
|
для: Neokortex
(02.09.2010 в 18:09)
| |
<?
$s = 'текст';
echo $s = htmlentities($s, ENT_NOQUOTES, 'windows-1251'); //текст
//а
echo '<br>' . html_entity_decode($s, ENT_NOQUOTES, 'windows-1251'); //текст
//декодирование, и странно, если бы оно работало как вам надо
|
| |
|
|
|