Что это в php

Основы работы с PHP

Перед чтением см. новые уроки раздела "Важное", которые появились выше.

  • Урок №
    новая вкладка с new.code.mu
    часть 1
  • Урок №
    новая вкладка с new.code.mu
    часть 2
  • Урок №
    новая вкладка с new.code.mu
    часть 3
  • Урок №
    новая вкладка с new.code.mu
    часть 4
  • Урок №
    новая вкладка с new.code.mu
    часть 5
  • Урок №
    новая вкладка ютуб
    пагинация

Практика

  • Урок №
    Практика
    PHP для новичков
  • Урок №
    Минипроект:
    гостевая книга

Движок PHP


    новая вкладка ютуб
    реализация движка php —>
  • Урок №
    новая вкладка с new.code.mu
    реализация движка php

Продвинутые БД

  • Урок №
    Продвинутые
    SQL запросы
  • Урок №
    Правильная организация
    баз данных

Аутентификация

  • Урок №
    новая вкладка с new.code.mu
    Введение
  • Урок №
    новая вкладка с new.code.mu
    Авторизация
  • Урок №
    новая вкладка с new.code.mu
    Сессии
  • Урок №
    новая вкладка с new.code.mu
    Регистрация
  • Урок №
    новая вкладка с new.code.mu
    Валидация
  • Урок №
    новая вкладка с new.code.mu
    Хеширование
  • Урок №
    новая вкладка с new.code.mu
    Профиль
  • Урок №
    новая вкладка с new.code.mu
    Права

Практика

ООП и MVC

Абстрактные классы и интерфейсы

  • Урок №
    новая вкладка с new.code.mu
    Абстрактные классы
  • Урок №
    новая вкладка с new.code.mu
    Введение в интерфейсы
  • Урок №
    новая вкладка с new.code.mu
    Применение интерфейсов
  • Урок №
    новая вкладка с new.code.mu
    Параметры методов в интерфейсе
  • Урок №
    новая вкладка с new.code.mu
    Объявление конструктора в интерфейсе
  • Урок №
    новая вкладка с new.code.mu
    Наследование интерфейсов друг от друга
  • Урок №
    новая вкладка с new.code.mu
    Интерфейсы и instanceof
  • Урок №
    новая вкладка с new.code.mu
    Реализация нескольких интерфейсов
  • Урок №
    новая вкладка с new.code.mu
    Наследование от класса и реализация интерфейса
  • Урок №
    новая вкладка с new.code.mu
    Константы в интерфейсах
    Новый урок в данном разделе

Трейты

  • Урок №
    новая вкладка с new.code.mu
    Введение в трейты
  • Урок №
    новая вкладка с new.code.mu
    Несколько трейтов
  • Урок №
    новая вкладка с new.code.mu
    Конфликты методов
  • Урок №
    новая вкладка с new.code.mu
    Модификаторы доступа
  • Урок №
    новая вкладка с new.code.mu
    Приоритет методов
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Статические свойства
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Статические методы
  • Урок №
    новая вкладка с new.code.mu
    Абстрактные методы
  • Урок №
    новая вкладка с new.code.mu
    Трейты в трейтах

ООП Магия

  • Урок №
    новая вкладка с new.code.mu
    Магия
  • Урок №
    новая вкладка с new.code.mu
    __toString
  • Урок №
    новая вкладка с new.code.mu
    __get
    новая вкладка с new.code.mu
    . текст, задачи __set
  • Урок №
    новая вкладка с new.code.mu
    . текст, код __isset
  • Урок №
    новая вкладка с new.code.mu
    . текст, код __unset
  • Урок №
    новая вкладка с new.code.mu
    . текст, код __sleep и __wakeUp
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Пространства имен
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Автозагрузка классов

Практика

  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс Arr
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс Ticket
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс TicketCollection
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс Date
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс Interval
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс File

Практика: классы как набор методов

  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс ArrayConvertor
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс TagHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс FormHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс TableHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс SessionShell
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс CookieShell
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс FileManipulator
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс databaseShell TODO cart корзина flash шаблонизатор роутер контроллер кеш логи фалидатор

В этом уроке мы разберем работу с данными на языке PHP.

Данные — это объекты, которыми может оперировать PHP, к примеру, сообщение пользователя — это строка, а его возраст — это число. Данные могут быть разных типов.

Строки и числа

Самыми простыми типами данных в PHP являются строки и числа.

Числа обозначают сами себя, например 1, 12, 145, а вот строки требуется брать в кавычки (одинарные или двойные — без разницы):

Числа также могут быть дробями. Разделителем целой и дробной части служит знак "точка". К примеру, число 10.754 — это дробь.

Переменные

Одним из самых главных и распространенных объектов в программировании является переменная.

Переменная — это такой объект, который может хранить внутри себя различные данные, например, строки или числа.

Имя переменной должно состоять из английских букв: больших или маленьких, а также цифр и знака_подчеркивания.

В PHP перед переменной обязательно должен быть написан знак доллара $:

Операция присваивания

Очень важным элементом программирования является операция присваивания.

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

Комментарии

К коде PHP, так же, как и в HTML и CSS, можно оставлять комментарии, которые будут проигнорированы PHP при выполнении программы.

Их обычно используют для того, чтобы оставлять какие-либо пометки в коде или временно убрать какие-то строки кода, которые вам мешают, а потом иметь возможность быстро их вернуть обратно.

Комментарии могут быть многострочными и однострочными:

Функции

В программировании есть такое понятие, как функции. В отличии от переменных, которые хранят внутри себя некоторые данные, функции выполняют операции над этими данными.

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

Параметры — это данные (например, строки или числа), которые мы даем функции, она производит над ними какие-то операции и возвращает нам результат.

Например, в PHP есть стандартная функция sqrt(), которая параметром принимает число, а возвращает квадратный корень этого числа.

То есть, если ей передать число 9, вот так — sqrt(9), то на выходе получим число 3. Полученное число мы можем записать в какую-либо переменную или вывести на экран.

Давайте найдем корень из 25 и запишем в переменную $a:

Функция echo

В PHP существует специальная функция echo, которая позволяет вывести какой-либо текст в окно браузера. В отличие от других функций, после echo не требуются круглые скобки ().

Следующий код выводит на экран заданный текст:

А в следующим коде переменной $text присваивается фраза, а затем содержимое этой переменной выводится на экран:

Математические операции

В PHP между числами и переменными можно совершать различные математические операции: сложение (знак +), вычитание (знак -), умножение (знак *), деление (знак /).

Чтобы понять, как с ними работать, посмотрите на следующий пример:

Можно сначала записать числа в переменные, а потом уже проводить операции с переменными:

А можно также одновременно производить операции и с числами, и с переменными:

Специальные значения

В PHP, как и в других языках программирования, существуют ключевые слова для некоторых специальных значений.

Значения true, false

Значения true и false обозначают истину и ложь соответственно. Они используются для таких вещей, которые предполагают два варианта ответа — да или нет.

К примеру, на вопрос ‘вам уже есть 18 лет?’ в можете ответить да, то есть true, или нет, то есть false.

Эти значения называются логическими.

Значение null

Значение null обозначает ‘ничего’. К примеру, если мы попробуем обратиться к переменной, которой мы еще не задали значение — то ее значение и будет null.

Функция var_dump

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

Например, если переменная является пустой строкой », то выведя ее содержимое на экран с помощью echo, мы ничего не увидим.

Вторая ситуация — когда переменная содержит строку с пробелами по краям, например:

Для решения описанных выше проблем следует использовать функцию var_dump(), которая предназначена для отладки кода и позволяет выводить значения переменных и их тип.

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

Пример использования var_dump():

PHP внутри HTML

PHP код можно вставлять внутрь HTML кода:

Сложение строк в PHP

В PHP, в отличие от многих других языков, строки складываются с помощью знака "точка":

Получение определенного символа строки

В PHP можно получить доступ к определенному символу строки по его номеру таким образом: $a[n] – n-ный символ строки (учтите, что нумерация идет с нуля):

Сложности с операцией присваивания

Очень часто новички не понимают, что присваивание отличается от обычного равенства. Посмотрите следующий пример:

С точки зрения математики запись $a = $a + 2 абсурдна, но не с точки зрения программирования.

В данном случае переменная $a имела значение 1, а затем мы переменной $a присвоили новое значение — старое значение переменной $a плюс 2.

Операции инкремента и декремента

Операция $a++ или ++$a – увеличивает переменную $a на единицу. Эта операция называется инкремент.

Операция $a— или —$a – уменьшает переменную $a на единицу. Эта операция называется декремент.

Давайте посмотрим, в каких случаях проявляется разница между ++a и a++.

Пусть у нас есть код echo ++a и код echo a++.

В первом случае переменная сначала увеличится на единицу, а потом выведется, а во втором случае — сначала выведется, а потом увеличится.

Операции +=, -=, *=, /=

Мы уже рассматривали код, который демонстрирует сложности с операцией присваивания:

В данном случае мы присваиваем переменной $a ее текущее значение, увеличенное на 2. Однако PHP позволяет записать этот код еще короче с помощью оператора +=:

Кроме того, существуют операторы -=, *=, /=, которые эквивалентны следующему коду:

Операция .=

Существует также операция .=:

Типизация переменных

Что будет, если попробовать сложить, к примеру, число и строку, вот так: 3+’3′? В результате вы получите число 6. Это значит, что PHP автоматически осуществляет преобразование типов при необходимости, вам не нужно за это переживать.

То же самое случится, если, к примеру, сделать так: 3+true или 3+false. Попробуйте эти примеры сами и узнайте к чему преобразуется true в этом случае, а чему — false.

Самые основы. Как работает PHP.

Отличие веб-приложения от обычной программы
Начиная писать программы для веба, многие начинающие программисты сталкиваются с такой ошибкой. Они рассматривают систему браузер-сервер, как обычное приложение. Интерактивное. Нажал кнопку — система среагировала. Провел мышкой — среагировала. Вся информация, которая доступна клиенту — доступна и программе, программа все время находится в памяти.
Так вот, в веб-программировании это не так!.
В момент, когда пользователь видит перед собой страницу и начинает совершать какие-то действия с ней, PHP уже завершил работу! И пользователь взаимодействует не с PHP скриптом, а со своей страницей HTML, которую он получил в браузер. Результатом работы скрипта на PHP в большинстве случаев является обычный текст. Текст HTML страницы. Которая отдается браузеру и показывается им, как обычный HTML. Вы сами можете в этом убедиться, написав в скрипте
<? echo "Привет, <b>Вася!</b>"; ?>;
А потом просмотрев в браузере исходный текст полученной страницы. Никаких тегов PHP там нет! Только
Привет, <b>Вася!</b>
Потому, что PHP исполняется на сервере!

Сервер и браузер общаются, посылая друг другу запросы по особому протоколу — HTTP. Соединение может инициировать только браузер. Он посылает серверу запрос — показать такой-то файл. Сервер клиенту файл посылает.
Только так и происходит. Клиент запросил — сервер отдал. И забыл сразу о клиенте. Отсюда становится понятным ответ на вопрос, можно ли точно узнать, сколько юзеров сечас на сайте. Нельзя. потому, что "на сайте" нету ни одного. Они соединяются, запрашивают страницу, и отсоединяются. Не имеют постоянного cоединения с сервером, как, например, игроки в Кваку. Узнать можно только примерно, записывая время каждого соединения и выбирая записи за определенный промежуток времени.

Так же, отсюда становится ясно, что сервер может узнать о клиенте очень мало. Только то, что клиент пришлет в HTTP-запросе. Разрешения экрана там нет 😉
Все, что сервер может знать о клиенте, можно посмотреть командой phpinfo()

Пример общения браузера с сервером:
Пользователь нажимает на ссылку, браузер посылает запрос серверу и ждет ответа:
Браузер -> PHP
PHP выполняет скрипт, отдает результат в браузер и завершает работу:
PHP -> браузер
Браузер отображает страницу, "просматривая" её на предмет ссылок, которые надо запросить у сервера (теги <img src>, <script src> и так далее) и посылает соответствующие запросы. Их можно увидеть, просматривая обмен заголовками, о чем речь будет чуть ниже:
Браузер -> сервер, Браузер -> сервер, Браузер -> сервер.
Пользователь заполняет форму и нажимает на кнопку:
Браузер -> PHP
PHP обрабатывает форму, записывает данные в базу и посылает браузеру заголовок
Location:
PHP -> браузер
Браузер, получив этот заголовок, запрашивает указанную страницу
Браузер -> PHP
PHP выполняет ее. и так далее.

Как работает РНР, где он выполняется?
РНР выполняется на сервере. Браузер посылает серверу запрос на страницу с php кодом. Сервер отдает эту страницу на исполнение интерпретатору PHP, интерпретатор генерирует HTML код, отдает серверу, а сервер посылает клиенту. Никакого РНР кода в браузер не попадает (это важно! Это значит, что увидеть исходный код PHP скрипта невозможно!). Единственный способ отправить что-то скрипту — это кликнуть по ссылке или нажать на кнопку в форме. Так, чтобы РНР обрабатывал какие-то действия пользователя в браузере — невозможно. РНР остался на сервере, ждать новых запросов с данными для обработки. PHP, но не скрипт! Скрипт, который выполнялся, отдавая пользователю страницу, завершил работу. Все данные, которые были в нем — пропали. Именно поэтому, если какая-то переменная нужна при последующих вызовах скрипта, ее надо этому скрипту передать снова.

Очень качественная и подробная статья об основах веб-программирования находится на сайте PHPWIKI.RU. Обязательно прочитайте её.

Как передать переменную из PHP в JavaScript и обратно?
Начнем с того, что никакую переменную передать, конечно же, невозможно. Поскольку переменная — это часть программы. И из одной в другую передать её нельзя. Передать можно только значение переменной. Т.е. текст. То есть, различия между "передачей переменной в яваскрипт" и формированием html таблицы НЕТ НИКАКОГО!
Отсюда вывод — "Передать переменную" в Javascript очень легко. Особенно, повторюсь, если учесть, что никакой "передачи" не происходит. PHP просто напросто генерирует яваскрипт точно так же, как и всю остальную страницу, вместе со всеми переменными.
Точно так же, как вы выводите в браузер строку "Hello World, это Вася Пупкин!", выводится и любой яваскрипт, со всеми своими переменными.
Единственное условие — вы должны представлять себе тот яваскрипт, который хотите получить.
К примеру в PHP есть переменная $name="Вася" , значение которой надо передать в яваскрипт, чтобы получить
<script>name="Вася";</script>
Мы просто пишем
<?
$name="Вася";
?>
<script>name="<? echo $name; ?>"</script>
То есть, фактически, мы просто сформировали нашим PHP скриптом некий текст, который выглядит, как нужный нам код на яваскрипте. Или, с другой стороны, мы писали свой яваскрипт, в нужных местах вставляя вывод переменных из PHP.
Чтобы не сойти с ума от разнообразных кавычек, настоятельно рекомендуется яваскрипт выводить не весь с помощью echo, а именно так, как написано здесь — закрыв тег PHP и открывая их только там, где нужно вывести переменную.

Как передать переменную из яваскрипта в PHP?
Точно так же, как и любые другие данные — послав запрос на сервер.
Но надо четко понимать, что во время выполнения php скрипта получить что-либо из яваскрипта, разумеется, невозможно. Передать можно будет только при следующем запросе. И обрабатывать его будет уже другой PHP скрипт.
Если надо по событию onClick обратиться к базе данных, то следует помнить, что она находится на сервере. То есть, надо запрашивать сервер, который запустит PHP скрипт, который обратится к базе, получит от неё ответ и передаст его в браузер.

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

Способы общения браузера с сервером.
Способов, предоставляемых протоколом HTTP, немного. Это важная информация. Никаких других способов нет. На практике используются два:
GET — это когда данные передаются в адресной строке, например, когда пользователь жмет ссылку.
POST — когда он нажимает кнопку в форме.
Сформировали страницу со ссылкой или с формой методом GET — запрос придет GET-ом. Сформировали с формой, в которой указан метод POST — придет POST-ом.
Определить, какой способ следует применять, очень просто. Если форма служит для запроса некой информации, например — при поиске, то ее следует отправлять методом GET. Чтобы можно было обновлять страницу, можно было поставить закладку и или послать ссылку другу.
Если же в результате отправки формы данные записываются или изменяются на сервере, то следует их отправлять методом POST, причем обязательно после обработки формы надо перенаправить браузер методом GET. Так же, POST может понадобиться, если на сервер надо передать большой объём данных (у GET он сильно ограничен), а так же, если не следует "светить" передаваемые данные в адресной строке (при вводе логина и пароля, например). Но в любом случае, после обработки POST надо всегда перенаправлять браузер на какую-нибудь страницу, пусть ту же самую, но уже без данных формы, чтобы при обновлении страницы они не записывались повторно. Например:
header("Location: http://".$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’]);
exit;

Самое главное, что надо помнить: сервер по своей инициативе обратиться к клиенту не может. Мы можем только по факту запроса выдать что-то браузеру — либо страницу, либо команду запросить другой ресурс.

Полезная информация может содержаться в различных НТТР заголовках.
Cookie — если сервер поставил куку, и она не устарела, то браузер отсылает ее вместе с каждым запросом.
HTTP authentication — если сервер запрашивал HTTP авторизацию, то браузер при каждом обращении шлет введенные логин и пароль.

РНР может посылать HTTP заголовки двумя командами — header() и setcookie() .

Просмотр обмена HTTP заголовками
Я очень рекомендую попрактиковаться с HTTP заголовками, посмотреть, как ими обмениваются сервер и клиент.
Для этого есть множество разных способов. Если у вас стоит популярный download manager FlashGet, то можно использовать его. Так же заголовки показывает популярная программа Proxomitron, можно скачать какие-нибудь специальные утилиты.
Для IE можно предложить плагин http://blunck.se/iehttpheaders/iehttpheaders.html
Для браузера Mozilla есть удобный плагин http://livehttpheaders.mozdev.org/
Так же, существует много других утилит, легко находимых в сети по запросу HTTP sniffer.
Обязательно воспользуйтесь любым способом посмотреть HTTP заголовки, которыми обменивается браузер с сервером. Это очень хорошая практика, а так же проверка — что шлет твой скрипт. Удобно при отладке установки кук или проблемах с сессиями.
Примерное представление о пришедших заголовках можно также получить, воспользовавшись функцией getallheaders() . Но следует учитывать, что работает она только если PHP собран, как модуль.

ОЧЕНЬ ВАЖНОЕ ЗАМЕЧАНИЕ
Из того факта, что PHP исполняется на сервере, и посылает результат своей работы браузеру, следует один простой, но очень важный вывод. Что PHP в принципе НЕ МОЖЕТ отобразить в браузере ничего такого, что невозможно было бы сделать средствами html.
ПРЕЖДЕ, чем что-то писать на PHP — попробуйте это сделать чистым HTML.
"Нажатие на Энтер" не переводит строку? А в html вы не пробовали таким образом строки переводить? Не получилось? Какая досада. Прочитайте, как в html сделать перевод строки и приходите снова.

PHP в результате своей работы формирует не картинку с текстами, как вы ее видите на экране монитора! PHP формирует HTML код! И этот код ЗНАЧИТЕЛЬНО отличается от того изображения, которое вы видите на экране. Если у вас что-то не получается, то надо всегда смотреть именно ИСХОДНЫЙ код страницы, а не то, как вам ее рисует браузер. В браузере Internet Explorer исходный код можно посмотреть, выбрав в меню Вид — Просмотр HTML-кода.
Если у вас не работает яваскрипт, сформированный PHP скриптом, или html показывает не то, что вы хотите, то исправить эту проблему очень просто.
1. Сначала пишете нужный яваскрипт или html руками. Если у вас с этим проблемы — обратитесь в соотвествующий форум — по яваскрипту или html. PHP тут не при чём.
2. Сравниваете с тем, что получено из PHP
3. Вносите исправления в PHP скрипт, чтобы текст, отдаваемый им, не отличался от написанного руками.

Браузер не умеет показывать файлы, в которые напихан одновременно и html картинки. Браузер умеет показывать только известные ему типы данных. В частности, это ИЛИ html ИЛИ картинка. Но не вместе. Если картинка — то ОДНА. Несколько картинок подряд браузер показывать не умеет. Браузер умеет показывать HTML, в котором прописаны ССЫЛКИ на несколько картинок.
Пожалуйста, прежде, чем изучать PHP — изучите хотя бы основы HTML! Прежде, чем что-то требовать от PHP — попробуйте сделать это на html.

Основные понятия PHP

PHP (PHP: Hypertext Preprocessor) &#8212; один из наиболее широко используемых языков программирования для создания динамических веб-страниц. Полностью бесплатный, работающий практически со всеми операционными системами и богатыми функциями, PHP установлен на более чем 1 млн. серверов и поддерживает более 20 млн. веб-сайтов.

Для чего используется PHP?

PHP чаще всего используется для обработки информации при создании динамических веб-страниц. Благодаря отличной поддержке ряда баз данных, таких как MySQL, dBASE, Oracle и PostgreSQL, PHP часто используется вместе с базами данных. Кроме того, встроенные более 800 функций и наличие отдельных библиотек функций делают PHP мощным языком. Вот несколько конкретных примеров использования PHP:

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

Как выполнять команды PHP?

В отличие от клиентских-ориентированных языков, таких как JavaScript, команды PHP выполняются сервером. Когда сервер получает запрос на странице от клиента (чаще всего от браузера), он сначала проверяет расширение файловой страницы. Если это .php, сервер распознает файл как PHP и выполняет отдельные команды php. Это могут быть, например, команды для загрузки необходимой информации из внешнего файла (см. пример ниже) или базы данных, обработки данных и т. д. После завершения обработки результат отправляется клиенту в виде HTML-кода.

Браузер не может понять, какая часть страницы была создана с простым HTML-кодом, а какая была сгенерирована PHP. Вся страница выглядит только как HTML. Вы можете увидеть это, если вы посмотрите на исходный код этой страницы, сгенерированный в основном с помощью PHP.

Команды PHP могут быть включены непосредственно в HTML-код на одной странице. Все, что вам нужно, это команды PHP, заключенные между <? php и ?>, Например следующий код на странице index.php

указывает, что содержимое файла header.html должно быть включено в страницу index.php.

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

Фреймворки PHP: обмен опытом

Основные функции, такие как взаимодействие с базой данных или обработка информации о форме, многократно используются в различных приложениях. Один из способов сэкономить на написании чужого кода &#8212; проверить, можете ли вы найти нужную программу в любой из библиотек PHP или среды для PHP (frameworks).

Среди наиболее часто используемых PHP-фреймворков следует отметить:

  • PEAR: PHP Extension and Application Repository &#8212; это хорошо известная коллекция PHP-кода, предоставляемая бесплатно большим сообществом программистов PHP.
  • Zend Framework: создатели современного PHP, Zend Technologies, предлагают один из самых известных PHP-фреймворков с более чем 2 миллионами установок;
  • cakePHP: c растущим сообществом разработчиков, это одна из самых быстрорастущих фреймворков PHP.
  • symphony: используется в ряде приложений крупных компаний, таких как Yahoo! Bookmarks.

PHP: преимущества и недостатки

Несколько причин использовать PHP в разработке вашего сайта:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *