|
Ошибки - это бич любой программы. Чем больше проект, тем труднее исправлять и находить ошибки. Но наиболее важным в процессе работы с программой является квалификация программиста и его желание написать правильный и аккуратный код, содержащий минимальное количество ошибок. В этой статье я постараюсь собрать техники и приемы, позволяющие минимизировать количество ошибок в программе, написанной на PHP. Но некоторые из представленных методов могут пригодится если вы пишите на любом языке программирования. |
|
Структура регулярных выражений POSIX чем-то напоминает структуру типичных математических выражений - различные элементы(операторы) объединяются друг с другом и образуют более сложные выражения. Однако именно смысл объединения элементов делает регулярные выражения таким мощным и выразительным средством. Возможности не ограничиваются поиском литерального текста (например, конкретного слова или числа); вы можете провести поиск строк с разной сематикой, но похожим синтаксисом - например, всех тегов HTML в файле. |
|
Когда мы пишем скрипты, на любом языке веб программирования, нам часто приходится работать со строками (обрабатывать их). Пожалуй, самым мощным механизмом для этого являются регулярные выражения. Для человека, никогда не встречавшегося с регулярными выражениями, они могут показаться чем-то очень сложным. Надеюсь, что, прочитав эту статью, вы поймете, что это не так. |
|
Регулярные выражения лежат в основе всех современных технологий поиска по шаблону. Регулярное выражение представляет собой последовательность простых и служебных символов, описывающих искомый текст. Иногда регулярные выражения бывают простыми и понятными (например, слово dog), но часто в них присутствуют служебные символы, обладающие особым смыслом в синтаксисе регулярных выражений, - например, <(?)>.*< <\/.?>. |
|
Как бы хорошо не писалось и не отлаживалось достаточно большое приложение, все равно оно будет содержать ошибки. Это вдвойне верно для программного обеспечения, разрабатываемого для сайтов. Дело в том, что программное обеспечение для сайтов часто находится в состоянии постоянного переписывания. В связи с этим возникает потребность создавать изощренные методики обработки ошибок. |
|
Ни для кого не является секретом, что наиболее распространенным способом взаимодействия html-страницы с сайтом является форма. Форма (то есть html-элемент образуемый тегом form) используется и бесплатными почтовыми службами, электронными магазинами и многими другими типами сайтов. Обработка простых форм посредством PHP не представляет никакого труда. Однако время от времени возникает потребность обработать форму, содержащую несколько однотипных полей, притом, что их количество может изменяться в широком диапазоне и их количество заранее не известно. |
|
Бывают такие случаи, когда владелец сайта не желает, или не может, отдавать свой сайт целиком своим посетителями. Приведем простой пример: У вас есть сайт, на котором, вы публикуете обои для рабочего стола. Общий объем сайта - 500Mb, посещаемость 7 000 хостов в сутки, примерный трафик - 300Гб в месяц или 10 Гб в день. Добавим к этим посетителям еще 20 человек, скачавших ваш сайт целиком. Получаем увеличение трафика на 10Гб или в два раза. Или другими словами 0.28% посетителей создали 50% трафика. Не совсем честно, особенно если вы оплачиваете трафик. |
|
В разнообразных конференциях, посвященных программированию меня в первую очередь всегда интересуют такие разделы, как "Web-программирование" и "Скрипты". По большей части, вопросы о PHP в таких форумах довольно простые, требующие лишь общего понимания PHP, тем не менее, самый часто задаваемый вопрос по моим наблюдениям, это: "Что такое сессии в PHP и с чем/как их можно кушать?". Хотелось бы разъяснить этот вопрос раз и навсегда. |
|
Соединение Apache и PHP в заголовке данной статьи не случайно. Именно связка этих двух технологий на данный момент представляет собой наиболее удобное решение для небольших и средних по размеру сайтов. Обе программы разрабатываются на принципах OpenSource и совершенно бесплатны. Любой желающий может скорректировать код под свои нужды. Впрочем, в этом нет необходимости - обе программы развиваются уже достаточно давно и большинство нужных возможностей уже реализовано. Над каждой из программ работает большая группа профессиональных программистов, оперативно исправляющая ошибки и добавляющая поддержку новых технологий. |
|
|
|