Общие сведения по работе с интерпретаторами PHP, Perl, Python, Ruby, Parser и др. Без поддержки php mysql perl python и популярных cms
PHP vs Python Что выбрать для разработки сайта?
Python vs PHP – битва титанов!
На сегодняшний день существует множество технологий, которые помогаю разработать свой собственный сайт довольно быстро, есть даже такие, которые абсолютно не требуют знаний в свере веб-разработки. Это могут быть конструкторы сайтов, а также различные CMS. Однако сегодня я хочу поговорить о двух наиболее популярный языках.
PHP – не сбрасывайте со счетов
Несмотря на то, что PHP уже “старичёк” и многие уже давно сбрасывают его со счетов и предсказывают “смерть” языка – ничего такого не происходит.
PHP очень хороший и функциональный язык, на данный момент на нём написано больше всего сайтов и при выборе данного языка вы не столкнётесь с проблемой, что хостинг его не поддерживает. Каждый хостинг имеет поддержку PHP5+. А если вы только начинаете изучать этот язык и просто колибаетесь, а стоит ли? То вы не ощутите потребности в PHP7+.
PHP достаточно сложен, по сравнению с тем же Python. Он имеет С подобный синтаксис и это однознаный плюс для тех, кто изучал С или С++. Сложен в реализации довольно простых задач, которые на Python делаются в пару строк кода.
Однако большинство так называемых минусов являются чисто субъективными и зависят от предпочтения разработчика.
PHP имеет множество фреймфорков, которые помогают реализовать задачи проще и не столь сильно зацыкливаться на безопасности, как без них. Также у PHP есть невероятно большое комъюнити, которое даст вам ответы на ваши вопросы очень быстро и вы сможете продолжить работы, если у вас возникли какие-либо вопросы.
Python – Django – Web-Development
Python на данный момент набирает свою популярность. Синтаксис очень прост и его легче понять новичку и он имеет превосходную четкость. Пользователи найдут широкое приминение классов в Python. Он даёт возможность разработчикам множественного наследования, метода построения цепочки вызовов и т.п.
Почти все GUI фреймворки могут быть смешаны с Python. Также он поддерживает все типы данных высокого уровня. Скорость работы и исполнения в Python выше, чем в PHP. Конечно ни один из них не является самым быстрым, но всё же сайты на Python работают быстрее.
Поддержка и фреймворки у Python активно растут. Количество фреймворков увеличивается, как и комъюнити. Однако никакой язык не сможет сравниться с количеством всего этого у PHP.
Самым популярным фреймворком Python является Django и этому есть объяснение. Очень простое и быстрое создание сайтов среднего уровня, не говоря уже о сайтах блогах или Landing Page. К примеру, хороший блог на Django можно написать за пару дней, и он будет отлично работать.
Выводы
Сегодня мы поняли, что PHP и Python довольно сильные конкуренты и сравнивать их лоб в лоб не совсем корректно. Python только недавно начал набирать свою популярность, так как PHP уже много лет служит верностью и правдой для своих разработчиков.
Количество вокансий всё время растёт, особенно с тех пор, как появился PHP7. На Python тоже большое количество вокансий, однако если вы живёте не в большом городе, то я советую начать с изучения PHP.
Это даст вам возможность быстро найти работу и легко решать проблемы с помощью огромного комъюнити.
Однако, если вы уже изучали Python или хотя бы немного знакомы с ним, то определенно начинайте изучать и строить свои первые сайты на Django.
Не изучайте теорию, практикуйтесь и учитесь решать поставленые проблемы непосредственно на практике.
Если эта статья была для вас полезна, то мы очень рады!
Делитесь информацией с друзьями, а также в своих социальных сетях.
Поделиться ссылкой:
Похожие записи
www.make-info.com
Общие сведения по работе с PHP, Perl, Python, Parser и др. — Техническая поддержка — NetAngels
В данной статье рассмотрена работа с интерпретаторами PHP, Perl, CPAN, Python, Parser, Ruby. Их запуск, настройка и наиболее часто встречающиеся ошибки.
На нашем хостинге Вы можете запускать любые приложения, написанные на интерпретируемых языках, в числе которых Perl, Python, Ruby и Parser. Запустить такие приложения бывает сложнее, чем развернуть обычный движок на PHP. Цель приведенной статьи состоит в том, чтобы помочь вам преодолеть сложности, с которыми, вы возможно, столкнетесь.
Быстрые ссылки:
PHP Parser Perl Python, Ruby Наиболее распространенные ошибки
PHP
Запуск скриптов на PHP обычно не доставляет особых проблем. Для запуска вашего проекта достаточно выполнить следующие действия:
- Загрузить скрипты в каталог www вашего сайта (например, sitename.ru/www).
- Проверить, что на загруженные файлы установлены корректные права -- -rw-r--r-- (0644).
- Проверить, что на папки установлены корректные права -- -rwxr-xr-x (0755).
В том случае, если для конкретного сайта или каталога необходимо использовать версию PHP, отличную от настроенной по умолчанию, вы можете воспользоваться инструкциями из статьи "Индивидуальные настройки PHP для сайтов".
PHP на наших серверах работает в режиме FastCGI.
Parser
Parser — это объектно-ориентированный язык программирования, разработанный Студией Артемия Лебедева, и предназначенный для генерации HTML-страниц на стороне веб-сервера. Для запуска сайта необходимо выполнить следующие действия:
- Загрузить скрипты в каталог www вашего сайта (например, sitename.ru/www).
-
Перейти в каталог www нужного сайта и в конфигурационный файл .htaccess добавить указание о том, что загруженные скрипты необходимо обрабатывать интерпретатором языка Parser. В нашем случае для этого достаточно добавить следующее указание:
-
Проверить, что на загруженные файлы установлены корректные права -- -rw-r--r-- (644).
Как правило, этих действий достаточно для того, чтобы запустить сайт на Parser. Однако, если в процессе работы вы сталкиваетесь в какими-либо ошибками, то более подробное их описание можно найти в специальном журнале, доступном по адресу ~/log/parser3.log.
На момент написания данной статьи на серверах хостинга установлена версия Parser 3.4.0. В том случае, если для работы сайта требуется иная версия интерпретатора, вы можете загрузить нужную версию с официального сайта и использовать ее для обработки кода скриптов. Порядок действий при этом будет следующим:
- Загрузите версию для ОС GNU/Linux x64 с официального сайта.
- Распакуйте архив и поместите файл parser3.cgi в каталог cgi-bin вашего сайта (например, sitename.ru/cgi-bin).
- Убедитесь, что на файл parser3.cgi установлены корректные права -- -rwxr-xr-x (755).
- Перейдите в каталог www нужного сайта и отредактируйте файл .htaccess, добавив в него следующие строки:Action application/x-httpd-parser /cgi-bin/parser3.cgi AddType application/x-httpd-parser .p .html
Parser работает в режиме CGI.
Perl
Запуск скриптов, написанных на языке Perl, возможен двумя различными способами -- в каталоге cgi-bin по всем правилам запуска CGI-скриптов (назовем его "классический способ"), либо в каталоге www, по аналогии с методом запуска PHP-скриптов ("альтернативный способ"). Последний способ подходит в тех случаях, когда сайт переносится с хостинга, где Perl работал в качестве модуля веб-сервера Apache. Рассмотрим подробнее оба способа:
Классический способ
- Загрузите скрипты в каталог cgi-bin вашего сайта (например, sitename.ru/cgi-bin).
- Проверьте, что на загруженные файлы установлены корректные права -- -rwxr-xr-x (755).
- При необходимости, в каталоге cgi-bin создайте файл .htaccess и запишите в нем указание, которое позволит запускать скрипты в режиме FastCGI:AddHandler fcgid-script .pl
Обратите внимание, что CGI-скрипты обязательно должны содержать в самом начале специальную последовательность (#!), указывающую системе какой интерпретатор следует использовать для исполнения сценария. В мире UNIX-подобных ОС такая последовательность называется sha-bang.
Заметим также, что вместо каталога cgi-bin можно использовать и каталог www. В этом случае, настройки в файле .htaccess должны будут иметь следующий вид:
-
для режима CGI:
Options +ExecCGI AddHandler cgi-script .pl -
для режима FastCGI:
Options +ExecCGI AddHandler fcgid-script .pl
Альтернативный способ
- Загрузите скрипты в каталог www вашего сайта (например, sitename.ru/www).
- Проверьте, что на загруженные файлы установлены корректные права -- -rw-r--r-- (644).
Perl в данном способе будет работать в режиме CGI.
Работа с CPAN
CPAN (Comprehensive Perl Archive Network) -- это обширная сеть архивов Perl, состоящая из большого количества сайтов по всему миру. Одноименный модуль из дистрибутива Perl позволяет автоматизировать операции установки необходимых программисту дополнительных модулей. Поскольку работа на сервере выполняется вами не от имени главного пользователя системы, перед использованием модуля CPAN необходимо выполнить его настройку таким образом, чтобы все модули устанавливались внутрь вашего домашнего каталога. Для этого выполните следующие действия:
-
Определите переменную окружения PERL5LIB, которая будет содержать путь до каталога, в который будут устанавливаться библиотеки Perl:
export PERL5LIB=~/perl5/lib/perl5:$PERL5LIBВы можете добавить эту строку в файл .bashrc, и тогда эта переменная окружения будет автоматически устанавливаться каждый раз, как вы входите в систему через SSH. Сделать это проще всего так:
echo 'export PERL5LIB=~/perl5/lib/perl5:$PERL5LIB' >> ~/.bashrc -
Для установки некоторых модулей требуются права на компиляцию (gcc). Для того чтобы их получить необходимо отправить письмо в техническую поддержку на почтовый ящик [email protected].
Устанавливаются модули (для примера взят MIME::Lite::TT::HTML) следующей командой:
perl -MCPAN -Mlocal::lib -e 'CPAN::install(MIME::Lite::TT::HTML)'В процессе установки можно на все вопросы нажимать клавишу enter.
Проверить корректность установки модуля можно командой
/usr/bin/perl -I ~/perl5/lib/perl5 -MMIME::Lite::TT::HTML -e 'print "OK\n";'где заменить u0000 на ваш логин.
Python, Ruby
Запуск скриптов, написанных на языке Python или Ruby, выполняется по всем правилам запуска CGI-скриптов, в каталоге cgi-bin ("классический способ"). Порядок действий при этом будет следующим:
- Загрузите скрипты в каталог cgi-bin вашего сайта (например, sitename.ru/cgi-bin).
- Проверьте, что на загруженные файлы установлены корректные права -- -rwxr-xr-x (755).
- При необходимости, в каталоге cgi-bin создайте файл .htaccess и запишите в нем указание, которое позволит запускать скрипты в режиме FastCGI:AddHandler fcgid-script .py .rb
Обратите внимание, что CGI-скрипты обязательно должны содержать в самом начале специальную последовательность (#!), указывающую системе какой интерпретатор следует использовать для исполнения сценария. В мире UNIX-подобных ОС такая последовательность называется sha-bang.
Заметим также, что вместо каталога cgi-bin можно использовать и каталог www. В этом случае, настройки в файле .htaccess должны будут иметь следующий вид:
-
для режима CGI:
Options +ExecCGI AddHandler cgi-script .py .rb -
для режима FastCGI:
Options +ExecCGI AddHandler fcgid-script .py .rb
Возможно Вам также будет интересно прочитать про запуск Django или Ruby on Rails на нашем хостинге:
Наиболее распространенные ошибки
1. Некорректные права доступа к CGI-файлам.
Проверьте, выполняются ли следующие условия применительно к вашим скриптам:
- на CGI-скрипты установлены права -rwxr-xr-x (755).
- Владелец и группа у скриптов совпадают с вашим логином (uXXXXX).
2. Отсутствует sha-bang-последовательность в начале CGI-скрипта
Обратите внимание, что все CGI-скрипты обязательно должны содержать в самом начале специальную последовательность (#!), указывающую системе какой интерпретатор следует использовать для исполнения сценария. В мире UNIX-подобных ОС такая последовательность называется sha-bang.
3. Ошибки формата файлов
Симптомы: загруженные вами скрипты не работают, а при их просмотре в редакторе vim в конце каждой строки видны символы ".^M".В различных ОС для обозначения завершения строки в текстовых файлах используются разные символы. Данная ситуация может произойти в том случае, если скрипт редактируется в операционной системе Windows, а затем загружается на сервер хостинга. Поэтому, если вы создаете или редактируете свои скрипты в Windows-подобной ОС, то вам необходимо удостовериться, что файл вашей программы сохранялся с соответствующими разделителями строк.
Обратите также внимание, что при загрузке скриптов по протоколу FTP, ваш клиент должен быть настроен на пересылку файлов в текстовом (ASCII), а не в двоичном (binary) режиме.
Тарифы на виртуальный хостинг, php хостинг, хостинг для Битрикс
www.netangels.ru
подробное сравнение ⭐⭐⭐⭐⭐ ⋆ IT тренды от Олега Солозобова ‼️
Адаптированный перевод этой статьи.
PHP, Python или Ruby-on-Rails (RoR): какой язык лучше для разработки веб-приложений в 2017 году?
Это один из наиболее обсуждаемых вопросов среди веб-программистов, студентов и компаний, интересующихся разработкой собственных сайтов. На самом деле, у каждого языка есть плюсы и минусы, преимущества и недостатки. Они полностью определяются вашими требованиями к разработке веб-приложений.
С помощью этого поста должны проясниться многие сомнительные моменты, связанные с этими языками программирования. Таким образом, вы сможете выбрать наиболее подходящий язык в соответствии со спецификой ваших потребностей и запросов. Детальный и всесторонний сравнительный анализ трёх наиболее популярных языков, а именно PHP vs Python vs Ruby (RoR), опираясь на статистические данные и данные по различных параметров. Итак, начнём поединок самых популярных языков программирования.
1. PHP vs Python vs Ruby: доля рынка
Статистические использования и рыночная доля любого языка программирования дают представление о его популярности среди масс. На изображении ниже показаны наиболее широко применяемые серверные языки программирования.
Победитель – PHP
2. PHP vs Python vs Ruby: сайты, созданные с их помощью
У PHP много известных клиентов, таких как Wikipedia, Facebook, PixelCrayons – и это только немногие из них. С другой стороны,
Ruby-on-Rails также обслуживает известных клиентов, в том числе Twitter, Hulu, Groupon, и т.д. И наконец, король поисковых систем Google, а также YouTube созданы на языке Python.
Победитель – «ничья»
3. PHP vs Python vs Ruby: юзабилити
Юзабилити – это один из важнейших факторов, влияющих на выбор языка программирования для разработки проекта вашего сайта. Практически все языки программирования формируют пользовательский интерфейс. Язык с высоким уровнем юзабилити делает возможной разработку более мощного, масштабируемого и высокопроизводительного программного обеспечения. Ниже приведена сравнительная характеристика юзабилити языков PHP, Python, и Ruby.
Победитель – Ruby-on-Rails (RoR)
4. PHP vs Python vs Ruby: кривая обучаемости
Простота обучения или «кривая обучаемости» — это ещё один важный параметр, который также учитывается при выборе языка программирования для профессионального роста или следующего проекта по разработке веб-приложений. Язык с высокими значениями кривой обучаемости лёгкий для понимания и содержит чистый исходный код. Из трёх рассматриваемых языков лучшая кривая обучаемости у Python, на втором месте PHP, на третьем — Ruby-on-rails.
Победитель — Python
5. PHP vs Python vs Ruby: сравнение популярности
Вне всякого сомнения, сегодня наиболее популярный в мире язык программирования – это PHP. Будучи одним из самых старых языков, PHP приобрёл много поклонников среди кодировщиков и большую клиентскую базу. Два других языка, т.е. Ruby и Python, относительно молодые, и, соответственно менее популярны в массах. На изображении внизу показан индекс TIOBE, который создан и поддерживается корпорацией TIOBE, основанной в Нидерландах. Индекс оценивает уровень популярности различных языков программирования.
Ниже интересное видео, в котором описывается преимущество PHP над Python при оценке уровня популярности:
Победитель — PHP
6. PHP vs Python vs Ruby: сравнение производительности
Производительность любого языка программирования имеет решающее значение. Высокопроизводительный язык позволяет создавать масштабируемое и быстродействующее программное обеспечение с высокой степенью защиты. На приведённом ниже изображении показаны средние значения времени исполнения и строки кодов каждого из трёх языков. По этим двум параметрам вы можете оценить и сравнить производительность рассматриваемых языков.
Победитель – Ruby и PHP
7. PHP vs Python vs Ruby: наиболее обсуждаемый язык
Самый обсуждаемый язык программирования может быть полезен во многих отношениях. Если какой-либо язык популярен или его активно обсуждают, он собирает большое сообщество пользователей, которое в кратчайшее время может помочь в решении вашего вопроса. Вместе с тем, наиболее обсуждаемый язык имеет хорошую поддержку. На изображении внизу приводится статистика популярности языков программирования.
Победитель — Python
8. PHP vs Python vs Ruby: наличие вакансий и размер заработной платы
Анализируя частоту объявлений о вакансиях по какому-либо языку, можно получить довольно полезную информацию. Если вы соискатель, вы сможете сделать выводы о большом выборе доступных вакансий по любому языку. С другой стороны, эта статистика важна для разработчиков сайтов и каждого, кто ищет идеальный язык программирования. Безусловно, язык с большим количеством вакансий предусматривает работу большого числа программистов и гарантирует стабильную занятость и хорошие перспективы развития карьеры.
Победитель — PHP
9. Дополнительная информация.
Рассмотрим другие важные данные об этих трёх языках:
10. PHP vs Python vs Ruby: «плюсы» и «минусы»
Для чёткого представления о серверных языках программирования PHP, Python или Ruby важно понимать их преимущества и недостатки. У каждого языка есть плюсы и минусы. Всё зависит от того, какие потребности и ожидания вы связываете с этими языками. Вы можете выбрать язык, наиболее отвечающий нуждам и потребностям вашей деятельности. Далее приведены плюсы и минусы каждого из трёх языков программирования.
PHP vs Python vs Ruby: преимущества
PHP | Ruby | Python |
Бесплатное программное обеспечение по лицензии PHP | Кроссплатформенность и открытый исходный код | Лёгкий и быстрый в изучении |
Лёгкий в освоении (высокая скорость обучения) | Может быть встроен в язык разметки гипертекста | Поддерживается множеством платформ и операционных систем |
Крупное сообщество пользователей и разработчиков | Язык программирования сверхвысокого уровня (VHLL) | Читабельный и организованный синтаксис |
Расширенная поддержка баз данных | Простой и понятный синтаксис, позволяющий начинающему разработчику очень быстро изучить язык | Обеспечение быстрого прототипирования и динамических семантических свойств |
Предоставляет большое количество доступных расширений и исходных кодов | Простое подключение к базам данных DB2, MySQL, Oracle и Sybase | Огромное сообщество поддержки |
Разрешает исполнение кода в ограниченных средах выполнения | Созданные на Ruby большие масштабируемые программы просты в сопровождении | Простое построение приложений путём тестирования и импорта необходимых функций |
Предоставляется возможность управления нативными сессиями и расширения API | Наличие встроенного отладчика и гибкого синтаксиса | Реюзабилити (возможность повторного использования) за счёт тщательной разработки пакетов и модулей |
Хорошая альтернатива конкурентам, таким как ASP (Active Server Pages) от Microsoft | Возможность написания внешних библиотек на Ruby или C | Объектно-ориентированный подход к программированию |
Работает практически на любой операционной системе или платформе | Возможность написания многопоточных приложений с простым API |
PHP vs Python vs Ruby: недостатки
PHP | Ruby | Python |
Не подходит для разработки настольных приложений | Возможны трудности в изучении | Недостаточно эффективная работа с многоядерными и многопроцессорными вычислительными системами |
Традиционно скудный функционал для обработки ошибок | Нехватка информационных ресурсов | Ограниченный уровень доступа к базам данных |
Глобальные параметры конфигурации могут менять семантику языка, осложняя процессы внедрения и совместимости | Большие затраты процессорного времени (CPU time) по сравнению с другими языками | Отсутствие коммерческой поддержки даже для Open Source проектов (однако, эта ситуация начинает меняться) |
Обращение к объектам по умолчанию осуществляется методом «вызова по значению» (CallByValue), что противоречит аналогичным операциям для большинства языков и застаёт многих программистов врасплох | Сравнительно медленная разработка обновлений | Небольшое количество разработчиков Python по сравнению с другими языками, например с Java |
В целом считается менее защищённым по сравнению с другими языками программирования | По отзывам более медленный по сравнению с языками типа Java |
Ниже представлено интересное видео на тему сравнения PHP, Python, и Ruby on Rails. Это видео многое прояснит для вас. Посмотрите его:
Заключение.
Приведённые выше факты и статистические данные помогут вам сделать правильный выбор языка программирования в соответствии с конкретными потребностями вашей деятельности.
Reviewer
Название
PHP vs Python vs Ruby для разработки веб-приложений: подробное сравнение
Описание
PHP, Python или Ruby-on-Rails (RoR): какой язык лучше для разработки веб-приложений в 2017 году?
Автор
Oleg
Издатель
8d9.ru
Лого
PHP vs Python vs Ruby для разработки веб-приложений: подробное сравнение
4.3 (85%) 4 votes8d9.ru
SBBO проектирование, разработка, поддержка и развитие сайтов. Блог Andrew Balduev
Используем современные интернет-технологии
Выбираем с умом. Простота использования, доступность, безопасность и распрастраненность.- HTML 5
- CSS 3
- Java Script
- PHP
- MySQL
- AJAX
- jQuery
- Host CMS
- WordPress
- Yii framework
- Nginx
- Apache
Хостинг и серверы
Хостинг для 1C-Битрикс (Bitrix), UMI.CMS, HOSTCMS, Netcat, Joomla, Droopal, Wordpress, ModX. Тарифы с поддержкой PHP, MySQL, Perl, Python и популярных CMS.
Блог
Заметки и дневник об интересных местах с фотографиями, решении повседневных задач связанных с созданием сайтов.Бывает сервисы живут, развиваются, радуют своих пользователей, но приходит время их закрывать. Выше опубликован последний скриншот сайта xmarks.com, возможно уже через неделю вы этого не увидите, т.к. сервис синхронизации закладок и вкладок для браузеров буквально сегодня разослал ещё одно письмо о подтверждении закрытия. (далее…)
До того, как в браузерах появились встроенные функции синхронизированние закладок между устройствами, пользователи прибегали к сторонним дополнениям. Скорей всего, ими пользуются и сейчас, но в ряду таких расширений порядело. Буквально на днях Xmarks разослал письмо своим пользователям, следующего содержания:
On May 1, 2018, we will be shutting down Xmarks. Your account will remain active until then, including the syncing of your bookmarks. After that date, your bookmarks should remain in any previously accessed browser, but they will no longer sync and your account will be deactivated.
(далее…)
На просторах русского интернета, есть распространенные и не очень, системы управления сайтом. По статистике первую десятку начинает Битрикс – заканчивает HostCMS, вторую DiafanCMS и PrestaShop. Сегодня рассмотрим CMS, которая, судя по названию, предназначена для разработки интернет-магазинов. Так ли это? Что можно сделать используя бесплатную PrestaShop CMS версии 1.7 из коробки, какие платежные системы подключить, что у ней под капотом. (далее…)
Продолжение в разработке...
Страница ещё не готова, контент не написан, структура формируется, дизайн блога рисуется.sbbo.ru
Разработка веб-приложений при помощи РНР: советы по эффективному изучению
И вновь здравствуйте, дорогие друзья!
Надеемся, предыдущая статья html-css-javascript об основах обучения веб-мастерству принесла кому-то из вас позитивные результаты. В данном обращении мы намерены продолжить обучающий цикл, обратив ваше внимание на скриптовые языки программирования. Преимущественно, их еще называют серверными (так как обрабатываются они именно на сервере).
Самым распространенным и популярным серверным языком программирования веб-приложений является PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста») — язык, созданный для генерирования HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается большинством хостинг-провайдеров. Входит в LAMP — распространённый набор для создания веб-сайтов (Linux, Apache, My SQL, PHP (Python или Perl).
РНР — встраиваемый язык — можно перемещаться между чистым кодом HTML и PHP, не жертвуя возможностью чтения текста. Но все же, своего рода “хорошим тоном” программирования считается отделение программного кода на языке PHP от представления в виде HTML — это чаще всего реализуется с помощью шаблонизации. Такие инструменты как регулярные выражения также довольно сильно упрощают работу.
Читайте также
- Новые возможности CSS3
- Регулярные выражения в PHP и их использованиеt
Какие информационные ресурсы оптимальны для ознакомления с PHP?
В чем же заключается популярность PHP? Ответ кроется в истории развития языка, в которую можно окунуться на следующих ресурсах http://php.a-site.info/Glava%202/Index1.htm и http://php.su/php/?history
Также для начала важно кратко ознакомится с его возможностями и преимуществами. Итак, главным источником информации по языке PHP является официальный сайт http://php.net/.
Здесь материал представлен на многих языках, в том числе — на русском. На этом ресурсе можно скачать дистрибутивы интерпретатора языка для установки на сервер, имеются разные редакции PHP (последняя — PHP5.4.5), а также дополнительные модули для конфигурирования языка на сервере.
Основным источником информации по языку является документация, которая представлена здесь в полном объеме на многих языках. Но перед тем, как приступить к тщательному зондированию документации, загляните сюда http://php.su. На сайте очень хорошо структурирован материал по разделам теории PHP, а также есть все необходимое для успешного ее закрепления. Например, можно попробовать сделать хлебные крошки на сайте, для упрощения навигации, или другие интересные возможности. Важным моментом в изучении основ будет использование классов и объектов php.
Полезным ресурсом станет http://www.php.ru, важно обратить внимание на такие темы, как :
- Выражения
- Операторы
- Управляющие конструкции
- Пространства имен
- Ссылки.
- Предопределённые переменные.
В процессе изучения и написания кода вам всегда будет нужен Справочник функций и Справочник языка, активно используйте их для хорошего освоения материала.
От теории к незамедлительной практике
Если процесс ознакомления с теоретической основой прошел успешно (а при желании — в точности так и произойдет), можно смело приступать к особенностям версии РНР. Сегодня наиболее широко используется PHP 5.2, 5.3, новая редакция — уже в стабильном релизе PHP 5.4.5.
В последнее время, в программировании на языке PHP применяется объектно-ориентированная модель — ООП. Данная модель позволяет использовать функции, описанные в конкретном классе в контексте применения в похожих задачах. Это существенно сокращает объем кода и оптимизирует число функции. PHP до недавнего времени обеспечивал лишь некоторую поддержку ООП. Однако, после выхода PHP5 поддержка ООП в PHP стала практически полной.
Советуем ознакомиться с относительно новым аспектом в программировании — использование MVC, который позволяет отделить логику обработки кода от представления (вывода данных в браузер). Для более опытных пользователей рекомендуем научиться применять шаблонизаторы (пр. Smarty).
Для того, чтобы процесс обучения прошел без болезненных мучений — приступайте к практике. Для написания своих примеров применяйте PHP-редакторы, которых сейчас есть большое количество. В них поддерживаются всплывающие подсказки, подсветка кода — для более легкого визуального восприятия; также много из них поддерживают роботу с проектами, обеспечивая тем самым связь кода в разных документах одного проекта. Хорошим редактором небезосновательно считаем NetBeans.
Методы оптимизации написания кода
Вы уже ознакомились с основами языка, синтаксисом, принципами ООП и MVC — самое время научиться упрощать себе работу. РНР-фреймфорки, которых сегодня уже существует немалое количество, способствуют легкому написанию кода. Среди всего их разнообразия хотелось бы выделить Codeigniter — фреймворк прост в освоении, имеет большое поддерживаемое сообщество, и главное — в свободном распространении и часто обновляемый.
Сегодня многие Интернет-проекты, которые пишутся на языке PHP, работают с базами данных, преимущественно с MySQL. Поэтому для создания серьезных систем вам необходимо знание языка SQL и принципов взаимодействия PHP с базами данных. Когда говорят о взаимодействии PHP с базой данных, обычно подразумевают взаимодействие PHP с сервером баз данных MySQL, так как их совместное использование стало неким стандартом в Интернете. Для более детального изучения языка рекомендуем освоить Ядро PHP, Безопасность приложений, взаимосвязь разных версий РНР.
Естественно, не могу не порекомендовать замечательный материал Вадима Ткаченко АКА Bizon-а «Вступление в PHP и MySQL». Некоторое время он даже издавался отдельной книгой, а сейчас (исправленный и дополненный) размещается на сайте «PHP в деталях». Не пугайтесь количества материала — пускай много, но &
www.imagecms.net
Все в одном: пакеты Apache, PHP, Perl, MySQL для Windows
Несмотря, на то, что данные в публикуемой статье немного устарели, мы нашли полезным разместить ее на нашем сайте. Статья представляет обзор, наиболее популярных пакетов, включающих связку Apache+PHP+Perl+MySQL для Windows. Рассмотрены EasyPHP, Денвер, Phpdev и BigApache
Apache под Windows
Современная web-разработка во многих случаях требует использования динамических решений, написания скриптов на различных языках программирования, навыков работы с базами данных. В этом творческом процессе возникает необходимость отладки созданных программ на соответствующем тестовом сервере. Кроме самого сервера, нам еще понадобятся интерпретаторы необходимых языков программирования, а также СУБД.
Давайте посмотрим на данные netstat. Если верить приводимым там сведениям, самым популярным web-сервером Рунета является Apache, в основном версий 1.3.2 и 1.3.27. этот продукт распространяется свободно, а благодаря открытому API пользуется благосклонностью разработчиков дополнительных модулей. Поддержкой и координацией развития Apache занимается группа Apache Server Foundation, а сам сервер признается одним из самых крупных достижений разработчиков свободного ПО.
Совместно с Apache, как правило, используются языки программирования РНР и Perl, хотя могут быть и другие варианты — это зависит от поставленных задач. Это также свободные продукты с большим числом поклонников, на деле показавшие свою пригодность для применения в web-проектах самого различного плана и уровня.
Что касается СУБД, то достаточно часто для решения подобных задач используют пакет MySQL. Основные его достоинства — это достаточная функциональность и быстродействие в совокупности с простотой разработки приложений с ее использованием. Существуют и намного более мощные системы, в том числе и свободные, однако MySQL непрерывно развивается и не собирается сдавать свои позиции. Если говорить про условия приобретения, то пакет MySQL бесплатен для некоммерческого применения. Данная СУБД предлагается весьма значительным числом хостеров в различных тарифных планах, в том числе и на некоторых бесплатных площадках.
Но это все касается, так сказать, server-side. Разработка же самих приложений ведется, как правило, на рабочих станциях, в качестве которых нередко выступают обычные домашние персоналки. Как быть в таком случае? Ответ давно найден — необходимо воспроизвести на своей локальной машине «серверную» среду, в которой смогут работать необходимые программы.
Пакеты Apache и MySQL, равно как и необходимые интерпретаторы языков программирования входят в большинство дистрибутивов той же ОС Linux. Здесь они работают в «родной» для себя среде и наиболее корректно. В идеале, отладкой скриптов для размещения на конкретном хостинге стоит заниматься в той же среде и с помощью версий соответствующего программного обеспечения, совпадающими с таковыми у избранного хостера. Это позволило бы свести к минимуму риск того, что наши скрипты на реальном сервере заработают не так, как мы от них ожидаем.
Поскольку, как мы уже отметили, разработка может вестись и на домашней машине, это в подавляющем большинстве случаев означает, что иметь дело надо будет с операционными системами от Microsoft. Из этого не стоит делать вывод о том, что если кому-то не хочется осваивать упомянутые выше «родные» для Apache ОС, то ему придется отказаться от идеи отладки на своем компьютере под управлением Windows нескольких собственных скриптов, или же настройки «под себя» готовой CMS. Названные пакеты могут работать на многих платформах, среди которых Unix, Linux, BSD, Solaris и даже MacOS. Для нас важен тот факт, что есть версии всех необходимых нам пакетов, совместимые с ОС Windows.
Более того, есть решение, позволяющее избежать процедуры ручной установки и настройки их по отдельности. Это так называемые «комплексы», которые включают Windows-версии Apache, MySQL и реализации некоторых популярных языков программирования. Данные компоненты заранее отконфигурированы, а ведь именно на этом этапе делается наибольшее количество ошибок людьми, не работавшими ранее с подобным программным обеспечением.
Так что если нас пока не интересуют нюансы настройки серверного ПО и не смущают теоретически возможные проблемы с последующей совместимостью, то вариант использования подобного комплекса выглядит весьма привлекательно. Предлагаемый вариант развертывания тестового Apache позволяет быстро начать продуктивную работу, не тратя драгоценное время на настройку собственно тестового web-сервера и других компонентов, и вообще абстрагироваться от задач администрирования, сосредоточившись на своих непосредственных задачах.
Подобные пакеты можно, в принципе, использовать не только по прямому назначению, то есть для тестирования собственноручно написанных скриптов для своих web-страниц, но и в роли (условно) полноценного сервера в рамках, например, локальной сети. Конечно, в таком качестве для более-менее серьезных случаев, на мой взгляд, ими лучше не пользоваться, но сама возможность при определенных условиях может представляться достаточно заманчивой.
Выделяются следующие способы построения таких комплексов: это может быть набор стандартных windows-версий необходимых пакетов с минимумом изменений, снабженных общим инсталлятором и предварительно отконфигурированными настроечными файлами или же максимально компактный вариант, сохраняющий, однако, необходимые свойства, достаточные для большинства любительских разработок. Соответственно и направления развития подобных пакетов сводятся либо к наращиванию числа включаемых компонентов и разработке дополнительных панелей управления, инсталляторов дополнений и тому подобного, либо к сохранению небольших размеров при добавлении новых версий основных компонентов пакета. Покончив с теоретической частью, перейдем к практическому знакомству с некоторыми решениями такого плана.
EasyPHP
Данный пакет имеет французские корни. Официальный сайт — http://www.easyphp.org/. Размер дистрибутива — чуть больше 11 Мб. Последняя на сегодняшний день версия — EasyPHP 1.7, которую можно скачать отсюда. Конфигурация этого пакета следующая:
- Apache 1.3.27
- PHP 4.3.3
- MySQL 4.0.15
- PhpMyAdmin 2.5.3
Как можно заметить, выбрана хорошо проверенная и широко распространенная версия Apache. Что касается остальных программ, то здесь все на высоте — нам предлагают самые свежие версии.
Инсталляция EasyPHP производится элементарно: запускаем Setup и следуем его указаниям. Инсталлятор общается с нами на французском, но понять его требования можно и не обладая глубокими познаниями в родном языке Вольтера и Жюля Верна — соглашаемся с лицензией, выбираем папку для установки, следим за копированием файлов.
Для нормального функционирования MySQL необходим настроечный файл mysql.ini. Если у нас уже установлена какая-либо версия данной СУБД, то программа-инсталлятор EasyPHP сохранит этот файл под именем типа «my_текущая_дата.ini». После первого старта EasyPHP его иконка обоснуется в системном трее. По правому клику она дает доступ к меню управления из следующих пунктов:
- Help — некоторая вводная информация про EasyPHP, и ссылки на FAQ и сайт PHP.
- Log files — просмотр лог-файлов сервера Apache (error.log и access.log), СУБД MySQL (mysql.err) и самого
- EasyPHP. Бесценный кладезь информации при отладке скриптов.
- Configuration — настройки Apache (файл httpd.conf), расширения PHP (по умолчанию отключены), конфигурация
- MySQL (файл my.ini), а также запуск встроенного PhpMyAdmin
- Web local — ссылка на стартовую страницу localhost
- EasyPHP — запуск небольшой консоли настроек самого EasyPHP. Аналогичный результат дает левый клик на значке программы в системном трее.
- Explore — открывает домашний каталог нашего Apache
- Administration — страница с некоторыми сведениями о текущих версиях и настройках компонентов системы. Удобным может показаться создание новых алиасов с помощью специальной формы.
- Local Web — открывает стартовую web-страницу домашнего каталога.
- Restart, Stop, Exit — понятно без объяснений
Давайте познакомимся с консолью EasyPHP. Здесь, кроме уже названных опций, предлагаются и некоторые дополнительные системные настройки: прямой запуск/перезапуск/остановка Apache и MySQL, а также их выполнение в режиме сервиса, загрузка EasyPHP при старте Windows, автоматическая проверка обновлений EasyPHP и автоматический же перезапуск серверов при внесении изменений в их конфигурации. Возможен выбор языка интерфейса из списка доступных.
Домашним каталогом для наших проектов является директория www. Тестовых скриптов разработчики EasyPHP нам не предлагают, поэтому для проверки работоспособности интерпретатора PHP стоит создать страничку с простейшим скриптом, например выводящем информацию о PHP с помощью phpinfo.
Кстати говоря, пакет EasyPHP поддерживает возможность апгрейда своих компонентов. Так для замены PHP необходимо остановить серверы, распаковать содержимое загруженного с php.net архива в подкаталог php установочного каталога EasyPHP, заменить имеющиеся библиотеки php4apache.dll и php4ts.dll на новые, а также заменить и проверить конфигурационный файл php.ini. Если все сделано правильно, то при следующем запуске EasyPHP мы увидим результат своих действий.
Денвер
Этот пакет разработан российскими программистами. Адрес официального сайта — web.dklab.ru. Название его расшифровывается следующим образом: «ДжЕнтльменский Набор ВЕб-Разработчика». Он отличается завидной для своих возможностей компактностью (размер дистрибутива всего около двух мегабайт) и наличием поддержки как PHP, так и Perl. Конфигурация «Денвера» текущей версии такова:
- Apache 1.3.27, SSI, mod_rewrite, mod_php
- PHP 4.3.0 с поддержкой gd и MySQL
- MySQL 3.23.53 с поддержкой транзакций (mysqld-max)
- PhpMyAdmin 2.3.0
- Ядро Perl без стандартных библиотек
Эмулятор Sendmail, поддерживающий совместную работу с PHP / Perl и складывающий письма в специальный каталог Кроме названных компонентов, «Денвер», как и положено такой системе, обладает единым инсталлятором, а также рядом оригинальных дополнений, например основанной на шаблонах системой управления виртуальными хостами Apache. Совсем не лишним представляется и переведенные на русский язык комментарии в конфигурационных файлах.
Как говориться в сопроводительной документации, «Предлагаемый комплекс программ позволяет запустить полноценный веб-сервер Apache с поддержкой PHP, Perl и сервер MySQL на машине, работающей под управлением MS Windows 95/98/Me/NT/2000/XP. Как правило, при установке не требуется никакой настройки, комплекс может использоваться даже неподготовленными пользователями. Тем не менее, он может найти применение не только для обучения азам веб-программирования, но и для отладки интерактивных сайтов, программ, использующих базу данных MySQL, написанных на языках PHP и Perl» — трудно добавить к этому что-либо от себя, разработчики выразились более чем доступно. Подробную документацию по работе с «Денвером» при желании необходимо скачивать отдельно.
Для загрузки выложены различные версии комплекса, отличающиеся другим набором компонентов. Об их составе можно судить по достаточно информативному названию самого файла. Так имя пакета «2003-02-10_Base_a1.3.27_p4.3.0_m3.23.53_pma2.3.0.exe» означает, что он был создан в феврале 2003 года и должен содержать Apache 1.3.27, PHP 4.3.0 и MySQL 3.23.53. Имеются и дополнения к «Денверу», так, например, можно скачать ActivePerl с набором библиотек, а также некоторые расширения для PHP.
Особенностью работы пакета является то, что для более полной имитации *nix-системы он, используя утилиту substr, создает в Windows-системе отдельный виртуальный диск. При этом вся реальная работа ведется с созданной ранее папкой C:WebServers (по умолчанию) или другой, избранной нами при установке. В этой папке программой создается структура каталогов, подобная такой структуре привычной для Unix, что несколько облегчает дальнейшую работу по размещению готового проекта на реальном сервере.
Существует два варианта запуска «Денвера». Первый предусматривает создание виртуального диска при загрузке Windows. Старт серверов осуществляется вручную. Этот вариант считается предпочтительным, так как дает некоторые дополнительные возможности при работе с командной строкой и установленными программами без запуска самого Apache. Второй подразумевает создание виртуального диска непосредственно при ручном запуске серверов. Теперь можно переходить к тестированию. Для этого предусмотрен целый набор скриптов, позволяющих оценить работу различных подсистем пакета.
Phpdev
Еще один комплекс, предлагающий готовое решение, адресованное разработчикам web-проектов, предназначенных для работы под Apache. Официальное представительство находится на http://www.phpdev.firepages.com.au/. Последняя версия — phpdev423. В ее состав входят:
- Apache 1.3.27
- PHP 4.2.3
- MySQL 4
- PhpMyAdmin 2.3.2
- Invision Board
- PhpWebsite
Кроме этого, можно отдельно загрузить mod_perl для Apache (1.27 + Perl 5.6.1), FTP-сервер Cerebus и PHP 4.3.0. Как можно заметить, кроме компонентов, применяемых собственно для разработки и отладки скриптов, создатели phpdev посчитали необходимым включить в пакет еще и парочку CMS, вероятно для того, чтобы клиент сразу понял, зачем ему тестовый web-сервер. Что касается процесса установки и работы с данным пакетом, то здесь нет ничего сверхъестественного и принципиально отличающегося от уже рассмотренных систем.
BigApache
Это решение претендует на роль средства практически на все случаи жизни. Даже само название пакета подчеркивает это стремление. Сайт проекта — http://www.bigapache.org/. Конфигурация пакета следующая:
- Apache 2 для Windows
- PHP 4.3.x
- MySQL 4
- mod_perl (Perl 5.8 с модулем ASP::Apache)
- SSLv2, SSLv3 TLSv1
- Поддержка Java (mod_jk/JBoss/Tomcat 4.1.x)
- Поддержка языка Python (mod_python/Python 2.x)
- Почтовый сервер Mercury
Таким образом, кроме стандартных для других комплексов Apache, PHP, MySQL и Perl, BigApache содержит еще и неплохую поддержку Java, Python и ASP, а также массу дополнений типа встроенных систем шифрования, анализатора лог-файлов и других полезных вещей, список которых весьма обширен. Для апгрейда установленных компонентов применяется так называемый Webinstaller, подгружающий самые новые версии программ и устанавливающий их в связку BigApache. Добавим, что пакет распространяется на условиях open source и предлагается как для некоммерческого, так и для коммерческого применения, а работает он под Windows NT/2000/XP.
Относиться к подобному стремлению охватить как можно больше компонентов можно по-разному. С одной стороны, это удобно: настраивать уже точно ничего не придется, а нам сразу станут доступны многие технологии разработки. Обратная сторона подобной функциональности и насыщенности дополнительными элементами легко предсказуема — размер пакета превышает 90 мегабайт. Возможен и такой подход. Если нам требуются какие либо технологии кроме классических Apache+PHP(Perl)+MySQL, то может, имеет смысл собирать свой собственный комплекс из стандартных windows-версий необходимых программ? Готового ответа здесь нет, каждый волен решать самостоятельно.
На рассмотренных выше пакетах список решений, упрощающих развертывание web-сервера Apache на Windows-машине, не заканчивается, но составить общее впечатление о возможностях таких комплексов, а то и сделать свой выбор, можно руководствуясь описанием упомянутых пакетов. Все они построены на основе свободных компонентов и, в свою очередь, распространяются бесплатно. Это типичные представители семейства. По сути, все они решают одинаковые задачи, поэтому их функциональные возможности зачастую близки. Остается только оценить собственные запросы, выбрать пакет и, засучив рукава, приниматься за работу.
www.internet-technologies.ru
Виртуальный PHP/Python/Ruby хостинг для веб-разработчика от КОМТЕТ
Какие параметры интересуют веб-разработчика при выборе оптимального хостера? Не ошибусь, если скажу что цена — далеко не показатель. Под серьёзный проект нужен хостер у которого: качественные серверы, размещены в надёжном дата-центре, с установленными современными фреймворками и приложениями, приемлемыми лимитами на системные ресурсы, а админы-профи готовы прийти на помощь и днём и ночью.
Компания КОМТЕТ, услуги которой мы разберём «по-косточкам» ниже, похоже, почти соответствует званию «идеального» хостера. Но так-ли это?
Серверное оборудование компании размещается в московском дата-центре М10 — одном из крупнейших российских ЦОД’ов, поэтому можно ожидать, что скорость доступа к вашим сайтам будет хорошей. Примечательно, что КОМТЕТ не экономит на оборудовании: в качестве «рабочих лошадок» выступают надёжные и производительные двухпроцессорные серверные системы Sun Fire в топ-комплектации.
Хостинг от КОМТЕТ сертифицирован на оптимальную работу со многими популярными системами управления сайтами: 1C-Битрикс, UMI.CMS, NetCat, HostCMS и т.д. Компания также является сертифицированным APS-провайдером и предлагает к автоматической установке более 110 веб-приложений из своего SaaS-репозитория.
Сделаем небольшой обзор тарифных планов компании КОМТЕТ на виртуальный хостинг:
- Лайт (60 руб./мес.): 1 сайт на аккаунте, 250 Мб места на диске, 5 почтовых ящиков, статистика Webalizer
- Оптима (96 руб./мес.): 5 сайтов на аккаунте, 700 Мб места на диске, 5 баз данных (MySQL или PostgreSQL), 25 почтовых ящиков, PHP, Perl, CGI, LIMB, статистика Webalizer
- Профи (166 руб./мес.): 10 сайтов на аккаунте, 1500 Мб места на диске, 10 баз данных (MySQL или PostgreSQL), 50 почтовых ящиков, Python, Ruby, PHP, Perl, CGI, LIMB, SSH chroot, SFTP, статистика Webalizer
- Плюс (290 руб./мес.): 5 сайтов на аккаунте, 3000 Мб места на диске, 5 баз данных (MySQL или PostgreSQL), почтовых ящиков без ограничений, Python, Ruby, PHP, Perl, CGI, LIMB, SSH chroot, SFTP, статистика Webalizer
- VIP (575 руб./мес.): 15 сайтов на аккаунте, 5000 Мб места на диске, 15 баз данных (MySQL или PostgreSQL), почтовых ящиков без ограничений, Python, Ruby, PHP, Perl, CGI, LIMB, SSH chroot, SFTP, статистика Webalizer
При этом на всех тарифах: неограниченный трафик, отсутствие лимитов на нагрузку процессора, выделение памяти на скрипт от 32 Мб до 192 Мб (в зависимости от тарифа), панель управления Plesk, автоустановка веб-приложений (кроме тарифа Лайт), ежедневный бэкап, почтовый веб-интерфейс (Horde, AtMail, RoundCube). Для хостинг-планов Профи, Плюс и VIP: SSH-доступ, управление php.ini, ionCube Loader, eAccelerator, собственные типы файлов для PHP/Python скриптов, cron.
К минусам можно отнести: мало дискового места на тарифах (кому-то может потребоваться больше), панель Plesk (не всем нравится).
Одно из основных направлений КОМТЕТ — это python-хостинг. Веб-разработчикам предоставляется просто таки огромный выбор современных python-фреймворков разных версий: Django, Zope, Pylons, TurboGears… Программисты, которые используют в вебдеве другие языки (PHP, Ruby) также не обделены вниманием. На веб-хостинге устанавливается большое количество библиотек и расширений, регулярно обновляются интерпретаторы и фреймворки до свежих современных, но стабильных версий.
Круглосуточная тех.поддержка, состоящая из высокопрофессиональных специалистов окажет помощь вебмастеру любого уровня знаний: от новичка до матёрого админа. Вопросы решаются совершенно разные — и помощь в установке CMS, и тонкий тюнинг специализированных веб-ресурсов под нагрузкой для увеличения производительности и надёжности.
В общем, администраторы интернет-проектов наверняка оценят такую услугу хостера как «Дополнительные работы по сайту». Пообщаться с тех.поддержкой можно по бесплатному федеральному телефону, по email, через систему тикетов, через jabber.
К минусам можно отнести: отсутствие тех.поддержки по icq и skype.
Таким образом, можно сделать следующий вывод: универсальный хостинг для любого веб-разработчика (PHP/Perl/Python/Ruby), замеченные минусы не существенны. Если у вас остались сомнения, то качество виртуального хостинга от КОМТЕТ всегда поможет оценить бесплатный 2-х недельный тестовый период.
www.hostnovosti.ru