Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Обработка загруженных файлов на сервере





Обработать загруженный файл на сервере тоже крайне просто. Файл сохра­няется как рhрх(где х является наращиваемым целым числом) во временном каталоге (этот каталог можно задать с помощью переменной окружения TEMPDIR). В конце запроса файл автоматически уничтожается, поэтому при необходимости дальнейшего использования его нужно скопировать из той же страницы. Доступ к имени файла осуществляется тем же способом, что и ко всем данным формы: с помощью имени, указанного в элементе ввода как переменная РНР (в данном случае - $userfile).

Файл можно скопировать в место постоянного хранения с помощью функции сору(), рассмотренной нами ранее в этой главе. Хотя временный загруженный файл автоматически уничтожается в конце запроса, лучше после копирования уничтожить его явным образом с помощью функции un­link ().

Поэтому, например, чтобы скопировать наш загруженный файл в C:\upload. txt (в Windows), а затем удалить его, можно использовать такой код:

 

<HTML>

<!-- upload.php —><?

// Копировать файл в C:\upload.txt. Не забудьте преобразовать обратную косую черту!

if (copy($userfile, "С:\\upload.txc")) { echo("<B>File successfully copied!</B>"); }

else { echo("<B>Error: failed to copy file...</B>"); }

// Уничтожить файл после копирования

unlink($userfile);

?></HTML>

 

 

10. Регулярные выражения

 

Регулярное выражение - механизм, позволяющий задать шаблон для строки и осуществить поиск данных, соответствующих этому шаблону в заданном тексте. Кроме того, дополнительные функции по работе с регулярными выражениями позволяют результаты поиска получить в виде массива строк, произвести замену в тексте по шаблону, разбиение строки по шаблону и т.п. Однако главной их функцией, на которой основаны все остальные, является именно функция поиска в тексте данных, соответствующих шаблону, описанному в синтаксисе регулярных выражений.

Регулярные выражения пришли к нам из Unix и Perl. В PHP существует два различных механизма для обработки регулярных выражений: POSIX-совместимые и Perl-совместимые. Их синтаксис во многом похож, однако Perl-совместимые регулярные выражения более мощные и, к тому же, работают намного (в некоторых случаях до 10 раз)быстрее. Поэтому здесь мы будем рассматривать только Perl-совместимые регулярные выражения.

Сутью механизма регулярных выражений является то, что они позволяют задать шаблон для нечеткого поиска по тексту. Например, если стоит задача найти в тексте определенное слово, то с этой задачай хорошо справляются и обычные функции работы со строками. Однако если нужно найти то, о чем можно сказать только то, как приблизительно это должно выглядеть - то здесь без регулярных выражений просто не обойтись. Например, если необходимо найти в тексте информацию, про которую известно только то, что это "3 или 4 цифры, после которых через пробел идет 5 заглавных латинских букв", то это можно сделать, воспользовавшись следующим регулярным выражением:

 

/\d{3,4}\s[A-Z]{5}/.

 

Регулярные выражения, как уже было сказано выше, представляют собой строку. Строка всегда начинается с символа разделителя, за которым следует непосредственно регулярное выражение, затем еще один символ разделителя и потом необязятельный список модификаторов. В качестве символа разделителя обычно используется слэш ('/'). Таким образом в следующем регулярном выражении:

/\d{3}-\d{2}/m,

символ '/' является разделителем, строка '\d{3}-\d{2}' - непосредственно регулярным выражением, а символ 'm', расположенный после второго разделителя - это модификатор.

Основой синтаксиса регулярных выражений является тот факт, что некоторые символы, встречающиеся в строке, рассматриваются не как обычные символы (литералы), а как имеющие специальное значение (метасимволы). Именно это решение позволяет работать механизму регулярных выражений. Каждый метасимвол играет свою роль в синтаксисе регулярных выражений.

 

Date: 2015-07-22; view: 422; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию