Все ленты — последние статьи

Обработка строк в РНР

Одной из наиболее часто встречающихся задач в программировании является обработка символьных последовательностей. Если проще — строк. Как это делается на языке гипертекстового препроцессора РНР и есть тема этой статьи.

Откуда и как можно получить символьнуюпоследовательность? В самом простомслучае — присвоить ее нужной переменной.Другие варианты — получить из формы илииз файла. Если Вы присваиваетепеременной нужное значение, то оно, какправило, не нуждается в обработке, таккак программист делает присвоение вкоде программы, и конечно, в нужном виде.Но если строка считывается из файла, илиполучается посредством формы, она (символьнаястрока) нуждается в обработке.

Самое первое, что стоит сделать, это удалить повторяющиеся пробелы. Дляэтого в РНР есть специальная функция: chop(str);
Пример ее записи:

$str = chop ($str);

Подробнее: Обработка строк в РНР

PHP и регулярные выражения

Прежде всего, напомню, что регулярные выражения представляют собой обычные текстовые строки, которые используются как шаблоны для анализа текста. Эти строки составляются по специальным правилам, позволяющим описать практически любую последовательность символов.

В состав PHP входит три набора функций для работы с регулярными выражениями. К первому набору относятся функции, названия которых начинаются с ereg. Эти функции работают с регулярными выражениями стандарта POSIX. Второй набор функций, по сути, является расширением первого, и допускает использование в регулярных выражениях многобайтных символов (Unicode). Эти функции начинаются с mb_. Третий набор функций (PCRE библиотека) работает с PERL-совместимыми регулярными выражениями. Названия этих функций начинаются с приставки preg. Этот набор функций обеспечивает большую функциональность и быстродействие, поэтому рассказывать я буду именно о нем.

На правилах составления самих регулярных выражений останавливаться нет смысла. Даже их краткое описание займёт несколько десятков страниц. Поэтому перейдём к рассмотрению библиотеки. Она включает семь функций, которые позволяют выполнять поиск, замену и разбивку текста с помощью регулярных выражений.
Для поиска в тексте используются функции:

preg_grep()
preg_match_all()
preg_match()

Подробнее: PHP и регулярные выражения

PHP. Фильтрация данных

Самом важным пунктом безопасности веб-сайта является проверка всех поступающих в запросы к базе данных, поэтому стоит всегда проверять данные, вводимые пользователем в формы поиска, заполнения полей регистрации и так далее на наличие «опасных» данных. Это может быть вредоносный JavaScript код, PHP или PERL команды, а так же что самое опасное — это команды серверу. Говорить о возможностях опытного хакера, которому попалась не проверяемое поле на сайте просто глупо — он сможет всё! Начиная от устанвки редиректа и заканчивая полным гоном или выводом из строя сервета.

Всегда помните, что абсолютно любой пользователь — это опасность для незащищенного сайта, поэтому всегда стоит проверять запросы и переменные от пользователя.

Основные этапы:

1) Анализ переменных, точнее массивов POST и GET;

2) Разделение переменных;

3) Фильтрация строковых переменных

Подробнее: PHP. Фильтрация данных

Как убрать все пробелы из строки.

echo str_replace(' ','','Текст с пробелами');

explode — разделяет строку, согласно указанному разделителю (separator).

explode — разделяет строку, согласно указанному разделителю (separator).
Как это всё выглядит и зачем это нужно?
Функция explode($a, $b, $c) — содержит три аргумента из них аргумент $c, можно не указывать, остальные обязательны для работы функции. Функция explode возвращает массив. Аргумент $a — есть разделитель строки, $b — сама строка, для разделения. Аргумент $c — определяет, какое количество значений, будет содержать стек массива на выходе.

Подробнее: explode — разделяет строку, согласно указанному разделителю (separator).