Функция PHP для удаления не нужных символов

Ответить
Аватара пользователя
darksmoke

Функция PHP для удаления не нужных символов

Сообщение darksmoke »

Как то наткнулся в Интеренете на скрипт в котором была функция которая удаляла указанные символы из строки (типо {}[]?|/\_-+=@#$%^&*!). Вот теперь пытаюсь найти - не получается.

Может кто знает такую функцию?



+ еще бы функцию которая удаляет HTML и PHP тэги.
Аватара пользователя
Coutty

Re: Функция PHP для удаления не нужных символов

Сообщение Coutty »

Цитата darksmoke:



еще бы функцию которая удаляет HTML и PHP тэги.
Функция PHP для удаления не нужных символов




Из документации:

strip_tags - вырезает тэги HTML и PHP из строки.

Эта функция пытается вернуть строку str с вырезанными тэгами HTML и PHP. Выдаёт ошибку с предупреждением в случае наличия неполных или ложных тэгов. Использует ту же машину вырезания тэгов, что и fgetss().

Вы можете использовать необязательный второй параметр для специфицирования тэгов, которые не должны вырезаться.

Пример:



PHP код:

Код: Выделить всё

$string = strip_tags($string, ''); 






По поводу первого вопроса затрудняюсь ответить.
Аватара пользователя
rus-4-ever

Re: Функция PHP для удаления не нужных символов

Сообщение rus-4-ever »

http://www.php.net/manual/ru/function.eregi-replace.php




Функция:

string eregi_replace ( string $pattern , string $replacement , string $string )



$pattern = '\.+?(){}[]^$'; // Перечисление символов... На самом деле у регулярных выражений большая область применения... (не только перечисление, но и интервалы, и т.д.)



$replacement= ""; // Определяем, ЧТО мы ставим вместо удаляемых символов
Аватара пользователя
bruder

Re: Функция PHP для удаления не нужных символов

Сообщение bruder »

rus-4-ever правильно сказал, просто добавлю что некоторые символы трудно экранировать например @, можно использовать шестнадцатиричный код





Код:

Код: Выделить всё

<?
$text = "\ + * ? [ ^| ] $ (  { } = ! < > | было";
 echo $text."<br>";
$text = "\ + * ? [ ^| ] $ (  { } = ! < > | осталось";
echo  preg_replace ("/[\\x28\\x29\\x3c\\x3e\\x40\\x2c\\x3a\\x3b\\x5c\\x22\\x2e\\x5b\\x5d\\x2b\\x3f\\x7d\\x2a\\x5e\\x7c\\x24\\x7b\\x3d\\x21\\x7c]/","",$text);
?>

там всевозможные символы. можно указать интервал чтобы сократить колличество. вобщем база есть, а там дополнительно поискать можно какие символы добавить или убрать. HEX код символа можно посмотреть так: echo bin2hex('символ');
Ответить

Вернуться в «Вебмастеру»