Как вырезать мусорные спец символы из строки? Php

Часто в текстах попадаются символы, сердечки, стрелки, наушники и т.д (♥�►◄). Как вырезать их их текста? Данная функция поможет в этом

Как вырезать мусорные спец символы из строки? Php

» » Сообщение:

Часто в текстах попадаются символы, сердечки, стрелки, наушники и т.д (♥�►◄). Как вырезать их их текста?

Данная функция поможет в этом:

Код: Выделить всё Развернуть
/**
* Функция была взята с php.net
**/
function utf8_str_split($str) {
  // place each character of the string into and array
  $split=1;
  $array = array();
  for ( $i=0; $i < strlen( $str ); ){
    $value = ord($str[$i]);
    if($value > 127){
      if($value >= 192 && $value <= 223)
        $split=2;
      elseif($value >= 224 && $value <= 239)
        $split=3;
      elseif($value >= 240 && $value <= 247)
        $split=4;
    }else{
      $split=1;
    }
      $key = NULL;
    for ( $j = 0; $j < $split; $j++, $i++ ) {
      $key .= $str[$i];
    }
    array_push( $array, $key );
  }
  return $array;
}
/**
 * Функция вырезки
 * @param <string> $str
 * @return <string>
 */
function clearstr($str){
        $sru = 'ёйцукенгшщзхъфывапролджэячсмитьбю';
        $s1 = array_merge(utf8_str_split($sru), utf8_str_split(strtoupper($sru)), range('A', 'Z'), range('a','z'), range('0', '9'), array('&',' ','#',';','%','?',':','(',')','-','_','=','+','[',']',',','.','/','\\'));
        $codes = array();
        for ($i=0; $i<count($s1); $i++){
                $codes[] = ord($s1[$i]);
        }
        $str_s = utf8_str_split($str);
        for ($i=0; $i<count($str_s); $i++){
                if (!in_array(ord($str_s[$i]), $codes)){
                        $str = str_replace($str_s[$i], '', $str);
                }
        }
        return $str;
}

Использование

Код: Выделить всё Развернуть
echo clearstr('t♥e�s►t◄'); // test



Похожие темыКомментарии ПросмотрыПоследнее сообщение
183267Спецсимволы HTML. Геометрические фи...
Сообщение от: Admin
0129Как удалить/отрезать несколько симв...
Сообщение от: Admin
0486Как в PHP преобразовать перенос стр...
Сообщение от: Admin
0505Как удалить теги <br> из стро...
Сообщение от: Admin
01072Транслит строки на JavaScript
Сообщение от: Admin