Справочник и примеры языка PHP

         

Справочник и примеры языка PHP

PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста»; первоначально Personal Home Page Tools — «Инструменты для создания персональных веб-страниц»; — скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.
Язык и его интерпретатор разрабатываются группой энтузиастов в рамках проекта с открытым кодом. Проект распространяется под собственной лицензией, несовместимой с GNU GPL.
В области веб программирование, частности серверная часть, PHP — один из популярных сценарных языков (наряду с JSP, Perl и языками, используемыми в ASP.NET) благодаря своей простоте, скорости выполнения, богатой функциональности, кроссплатформенности и распространению исходных кодов на основе лицензии PHP.
Популярность в области построения веб-сайтов определяется наличием большого набора встроенных средств для разработки веб-приложений. Основные из них:
автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;
взаимодействие с большим количеством различных систем управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);
автоматизированная отправка HTTP-заголовков;
работа с HTTP-авторизацией;
работа с cookies и сессиями;
работа с локальными и удалёнными файлами, сокетами;
обработка файлов, загружаемых на сервер;
работа с XForms.
В настоящее время PHP используется сотнями тысяч разработчиков. Согласно рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в июне 2013 года PHP находился на 5 месте среди языков программирования.К крупнейшим сайтам, использующим PHP, относятся Facebook, Wikipedia и др.
Входит в LAMP — распространённый набор программного обеспечения для создания и хостинга веб-сайтов (Linux, Apache, MySQL, PHP).
Хотя PHP и не слишком распространён в данном качестве, его можно использовать и для создания GUI-приложений.
Для создания кроссплатформенных приложений служат пакеты PHP-GTK и PHP-Qt, представляющие собой обёртки для соответствующих популярных библиотек виджетов.
Для создания графических приложений для Windows существуют свободный пакет WinBinder (написан на Си, фактически — обёртка для WinAPI).
Также существует реализация PHP для .NET/Mono — Phalanger, результатом компиляции PHP-кода в Phalanger может быть любое .NET-приложение, будь то серверное или настольное.



Справочник по PHP и Lite PHP
Справочник по PHP и Lite PHP (продолжение)

MySQL С API
Справочник по Perl

Введение в программирование на PHP5

Сегодня создание страницы Web является не слишком трудной задачей. Многие стандартные программные пакеты персональных компьютеров обладают встроенными средствами для преобразования документов текстовых процессоров, электронных таблиц, баз данных и т.д. в специально кодированные документы, которые могут быть доступны в Web. Специальные пакеты для создания страниц Web, такие, как Microsoft FrontPage и Macromedia Dreamweaver, позволяют легко создавать страницы Web с помощью технологии буксировки. В большинстве таких случаев даже не нужно знать о существовании специального языка кодирования HTML (язык разметки гипертекста), который неявно все это обеспечивает.

Контекст разработки Web
Соединение XHTML и PHP
Скалярные переменные

Оператор If
Циклы while
Включаемые файлы
Проектирование форм

Сеансы
Доступ ODBC
Доступ к MySQL
Открытие файлов
Сайт e-Commerce

Использование оператора SQL UPDATE
Оператор SELECT

Самоучитель по введению в экспертные системы

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

Введение
Что такое экспертная система?
Обзор исследований в области искусственного интеллекта
Символические вычисления
Системы, основанные на знаниях

Ассоциативные сети и системы фреймов
Объектно-ориентированное программирование
Логическое программирование
Представление неопределенности знаний и данных
Приобретение знаний

Эвристическая классификация (II)
Эвристическая классификация (I)
Иерархическое построение и проверка гипотез
Решение проблем конструирования (I)
Решение проблем конструирования (II)

Системы с доской объявлений
Системы отслеживания истинности предположений
Формирование знаний на основе машинного обучения
Сети доверия
Рассуждения, основанные на прецедентах

Гибридные системы
Загадки искусственного интеллекта
Инструментальные средства разработки экспертных систем
Средства формирования пояснений

Литература
Программирование на языке CLIPS

Управление проектами

Современные процессы разработки программного обеспечения, такие как Rational Unified Process (RUP), Extreme Programming (XP) и Scrum, являются эволюционными по своей природе, и многие из них – быстрые (agile). При применении эволюционного подхода вы работаете одновременно в итерационной и инкрементальном режимах; быстрый подход сочетает эволюционность с высоким уровнем сотрудничества. Работая в итерационном режиме, вы в каждый момент времени немного моделируете, немного тестируете, немного кодируете и немного развертываете, потом еще немного, и еще немного, и т.д. При использовании инкрементального подхода вы организуете свою систему в виде последовательности выпусков, а не одного большого выпуска. Когда группа разработчиков прибегает к коллаборативному подходу, ее участники активно стараются найти способы эффективной совместной работы; следует даже добиваться того, чтобы инициаторы проекта (заказчики системы) являлись активными членами группы.

Быстрые методы для объектных баз данных
Антипаттерны руководства командами разработки ПО
Победа любой ценой
Как добиться успеха в безнадежных проектах

В круге разработки
Требования к проекту. Классификация — первый шаг к пониманию
Проектирования больше нет?

Пересекая границы: специфика разработки ПО распределенной командой
Проблемы анализа экономики производства программных продуктов
Реализация стандарта ГОСТ Р ИСО/МЭК
Современные инструменты проектного менеджмента

Четвертое измерение или Как обмануть Железный Треугольник
Понятие «реинжиниринга ИС», его содержание и место в ЖЦ ИС
Designing for FAILURE - ключ к успеху?
Системные характеристики КМП

Компоненты и объем методологии
Исполнение моделей при помощи виртуальной машины
MSF – философия создания IT-решений или голые амбиции лидера
Внедрение систем управления. Что вначале - процессы или ПО?

О чем и зачем
Семантическая реконсиляция прикладных данных на основе моделей
Рефакторинг архитектуры программного обеспечения: выделение слоев
Диалог с оппонентом

Использование ролей в сценариях взаимодействия
Основные вопросы отбора и формирования руководителей проектов
Обзор методологии SCRUM
Своими силами: управление процессом разработки ПО небольшой командой специалистов
Структурное руководство проектом. Серебряная пуля?

Анализ и трансформации исполняемых UML моделей
Трансформация UML-моделей и ее применение в технологии MDA
Теория для победителя
Экстремальное программирование и быстрая разработка ПО
Программист или интерэкшн-дизайнер?

Технологии разработки программного обеспечения

Компьютерные науки вообще и программная инженерия в частности — очень популярные и стремительно развивающиеся области знаний. Обоснование простое: человеческое общество XXI века — информационное общество. Об этом говорят цифры: в ведущих странах занятость населения в информационной сфере составляет 60%, а в сфере материального производства — 40%. Именно поэтому специальности направления «Компьютерные науки и информационные технологии» гарантируют приобретение наиболее престижных, дефицитных и высокооплачиваемых профессий. Так считают во всех развитых странах мира. Ведь не зря утверждают: «Кто владеет информацией — тот владеет миром!»
Поэтому понятно то пристальное внимание, которое уделяет компьютерному образованию мировое сообщество, понятно стремление унифицировать и упорядочить знания, необходимые специалисту этого направления. Одними из результатов такой работы являются международный стандарт по компьютерному образованию Computing Curricula 2001 — Computer Science и международный стандарт по программной инженерии IEEE/ACM Software Engineering Body of Knowledge SWEBOK 2001.

Организация процесса конструирования
Тестирование элементов
Набор метрик Чидамбера и Кемерера