Эволюция php

Различия между константами и переменными в языке PHP для чайников

  1. У констант нет приставки в виде знака доллара ($).
  2. Константы можно определить только с помощью функции define(), а не присваиванием значения.
  3. Константы могут быть определены и доступны в любом месте без учета области видимости.
  4. Константы не могут быть определены или аннулированы после первоначального объявления.
  5. Константы могут иметь только скалярные значения.

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

«У меня был hard-режим»: об учёбе в Skillbox и языке РНР

— Ты начал обучение в Skillbox и параллельно работал на старой работе. Как совмещал?

— У меня был hard-режим. Я поставил себе цель — выучиться на PHP-разработчика за полгода. Каждый день после работы я учился и учился. Я почти не гулял, не играл в игры, не делал ничего другого. Я пожертвовал личным временем, но зато достиг цели. Думаю, без онлайн-университета моё движение к ней замедлилось бы раза в три.

— Неужели за полгода такой интенсивной работы не было выгорания?

— Нет! Наоборот: я так влюбился в учёбу и профессию, что не мог остановиться. Я понял, что в программировании нужно постоянно учиться. Иначе — тебя догонят и перегонят.

— Какое задание показалось самым интересным на курсе?

Этот опыт помог погрузиться во все технические тонкости. Я понял, как работает код без фреймворка: ты просто сам придумываешь, как осуществлять разные задачи.

— А что для тебя оказалось самым сложным в изучении языка РНР?

— Мне тяжело давалась архитектура приложения. Также непросто было понять в объектно-ориентированном программировании, как правильно структурировать проект, применять шаблоны, как управлять базами данных и работать с MySQL.

— Как справился?

— Просто уделил этим моментам больше времени. Нашёл для себя такую схему: пересмотреть урок по теме несколько раз — задать вопросы в чате — сделать перерыв в день — снова вернуться к теме и уже с лёгкостью усвоить материал.

— Какие минусы в языке РНР видишь?

— Раньше меня напрягало, что РНР — самый популярный и, соответственно, самый низкооплачиваемый язык. Но со временем понял: тех, кто разрабатывает, — много, а тех, кто разрабатывает хорошо, — гораздо меньше.

Решил: если делать качественно, то и уровень заработка будет приемлемым.

— А как ты сейчас оцениваешь свой уровень по зарплате и должности?

Логические или реляционные операторы

Логические операторы в основном они используются для работы с условными операторами и выражениями. Условные утверждения основаны на условиях. Кроме того, условие может быть выполнено или не может быть выполнено, поэтому результат условного оператора может быть истинным или ложным . Вот логические операторы вместе с синтаксисом и операциями, которые предоставляет нам PHP:

Оператор название Синтаксис Операция Пример
and Логическое И $x and $y TRUE, если оба операнда TRUE, иначе FALSE Пример »
or Логическое ИЛИ $x or $y TRUE, если любой из операндов TRUE, иначе FALSE Пример »
xor Логический XOR $x xor $y TRUE, если один из операндов TRUE, и FALSE, если оба TRUE Пример »
&& Логическое И $x && $y TRUE, если оба операнда TRUE, иначе FALSE Пример »
|| Логическое ИЛИ $x || $y TRUE, если любой из операндов TRUE, иначе FALSE Пример »
! Логическое НЕ !$x TRUE, если $x FALSE Пример »

Первый шаг к пониманию того, как работают логические операторы — это составить предложение, а не сразу смотреть на пример сценария. Предположим, нам нужно проверить некоторые аспекты двух переменных с именами $x и $y. Наше предложение может выглядеть так:

Если $x меньше 25 И $y больше 45, то PHP должен отобразить некоторое сообщение.

Здесь логический оператор — это часть предложения «И». Если бы мы выразили это на языке PHP, мы бы использовали описанные ранее операторы сравнения вместе с логическим оператором :

if (($x < 25) && ($y > 45))
echo 'Наше выражение истинно';

Точно так же, составим следующее предложение:

Если $x меньше 25 ИЛИ $y больше 45, отобразить сообщение.

Затем мы заменим «ИЛИ» на эквивалент PHP :

if (($x < 25) || ($y > 45))
echo 'Наше выражение истинно';

Следующий полезный логический оператор — это исключающее ИЛИ оператор . Оператор возвращает истину (true), если только одно из выражений оказывается истинным (true), но не оба. Например:

Если ИЛИ $x меньше 25 ИЛИ $y больше 45, отобразить сообщение

Мы представляем исключающее ‘или’ ключевым словом :

if (($x <25) xor ($y > 45))
echo 'Наше выражение истинно';

И последний логический оператор — это оператор НЕ, который просто инвертирует результат выражения. Символ представляет собой оператор НЕ и может использоваться следующим образом:

(10 > 1) // Возвращает True
!(10 > 1) // возвращает false, потому что мы инвертировали результат с помощью логического НЕ

Логические операторы.

Логические операторы в вашем сценарии позволяют определять истинность условий,
таких, как условия сравнения в предыдущем знакомстве. В операторах if…else
или while, логические операторы используются для вычисления условия. Сейчас
мы рассмотрим логические операторы && (and — «и») и || (or — «или»), которые
применяются для вычисления логического выражения, в котором присутствуют несколько сравнений.

С помощью текстового редактора введите текст HTML:

Начните блок РНР. Создайте две переменные и присвойте им значения.
Сравнения в этом сценарии будут основываться на этих двух переменных.

Внутри оператора if else проверьте истинность условия «значение
переменном $degrees больше 100 или значение переменной $hot равно «да»».
И, в зависимости от результата, выведите сообщение с помощью команды echo.

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

Внутри оператора if else введите вторую проверку истинности условия
«значение переменной $degrees больше 80 и значение переменной $hot равна «да».
И, в зависимости от результата, выведите сообщение с помощью команды echo.

Завершите РНР-блок и создание HTML-документа строками:

Сохраните набранный файл в папке для документов вашего Web-сервера под именем logicalscript.php

Запустите браузер, в строку Адрес: введите

http://localhost/logicalscript.phpEnter

В окне браузера появится страница с текстом (Рис. 1.14).

Рис. 1.14. Результат работы сценария logicalscript.php

На экран будет выведено сообщение, связанное с результатом сравнения.
Оба выражения в приведенном выше примере истинны. В первой проверке только
одно выражение может быть истинно — этому условию удовлетворяет значение
переменной $hot, которое имеет значение «да». Во второй проверке оба
выражения должны быть истинны и они являются таковыми (переменная $degrees
имеет значение 95, которое больше чем 80, и переменная $hot имеет значение «да».

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

Лямбда функции

Лямбда функции (также известные, как анонимные функции) — это ничто иное, как функции без названия. Работа с подобными функциями осуществляется через переменную, которой данная функция была присвоена.

Возможность создания подобных функций есть во множестве языков. Вы наверняка уже писали их в вашем JavaScript коде, когда реализовывали функции обратного действия при работе с ajax.

$("#myButton").click(function () {
    // do something
});

Приведённый фрагмент кода — это ничто иное, как создание анонимной функции.

В PHP лямбда функции появились в версии 5.3:

<?php
$square = function ($arg) {
    return $arg * $arg;
};

$value = $square(2); // 4

Когда речь идёт об анонимных функциях, очень важно понимать область видимости переменных. К примеру, в JavaScript анонимные функции имеют доступ к переменным за их пределами, а в PHP — нет

Обучение на PHP-разработчика

Обучение PHP разработчика можно поделить на 3 типа:

  1. Образование в высшем учебном заведении.
  2. Онлайн-курсы.
  3. Самообучение.

Каждый из вариантов не стоит воспринимать обособленно, скорее наоборот. Самый гармоничный способ познать профессию с нуля — получать знания от кого-либо и учиться самому. Знания можно получать в ВУЗе или на онлайн-курсах, а подкреплять их и расширять кругозор можно через самостоятельное обучение.

Высшее образование

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

Наиболее подходящими специальностями будут:

  • Автоматизированные системы обработки информации и управления;
  • Вычислительная техника и программное обеспечение;
  • Программная инженерия;
  • Прикладная информатика;
  • Информатика и компьютерные науки;
  • Фундаментальная информатика.

Что касается высших учебных заведений, выделим несколько подходящих:

  • Санкт-Петербургский университет аэрокосмического приборостроения;
  • Московский политехнический университет;
  • Московский государственный технический университет им. Н. Э. Баумана;
  • МИРЭА;
  • Санкт-Петербургский политехнический университет Петра Великого.

Можно подобрать специальность и ВУЗ на сайте Postupi. В нем есть 2 специализации, подходящие под программирование на PHP: web-программист, и разработчик web и мультимедийных приложений.

Обучение онлайн

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

3 популярных онлайн-курса по профессии:

1. Профессия “PHP-разработчик” на Skillbox

Годовая образовательная программа, в которой обучают работе с нуля, а в качестве основного фреймворка выбран Symfony.

Ссылка на курс и подробности: https://skillbox.ru/course/profession-php/

2. Обучение на PHP-разработчика в GeekBrains

Программа обучения длительностью в 4 месяца. По окончанию курса студент получает стажировку в ГикБрейнс, а также сертификат.

Ссылка на курс и подробности: https://gb.ru/professions/php_developer

3. Курс “Веб-программирование с нуля” от Нетологии

Это общая программа обучения, которая не сконцентрирована на PHP, а делает из студента универсального веб-разработчика. В курсе есть всё, что понадобится для освоения профессии.

Ссылка на курс и подробности: https://netology.ru/programs/web-developer

Udemy

Если курсы в онлайн школах для Вас слишком длительные или дорогие, то курсы PHP разработчика можно найти и на платформе Udemy. В ней есть целых 2200 (на момент публикации статьи) частных курсов по данному языку программирования.

Ссылка на список всех курсов по PHP: https://www.udemy.com/courses/search/?src=ukw&q=PHP+разработчик

Самостоятельное обучение

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

Далее перечислены несколько ссылок на материалы, которые можно использовать для самообразования.

Подборка книг:

  • Самоучитель PHP 7. Игорь Симдянов;
  • PHP 7 в подлиннике. Дмитрий Котеров;
  • Изучаем PHP 7. Дэвид Скляр;
  • Объекты, шаблоны и методики программирования. Мэтт Зандстра;
  • Чистый код. Создание, анализ и рефакторинг. Мартин Роберт К.

Источники для самостоятельного обучения:

  • YouTube-канал Дмитрия Афанасьева, посвященный программированию на PHP и не только;
  • Введение в PHP 7 (обзор изменений по сравнению с предыдущей версией);
  • Уроки по PHP на русском;
  • Обзор PHP для начинающих;
  • Изучение PHP с нуля на русскоязычном сайте;
  • Курсы с текстом и видео на сайте PHP Start;
  • Онлайн-учебник по PHP;
  • Современный учебник по Java Script;
  • Руководство по использованию контроля версий Git;
  • Курс на YouTube по HTML и CSS (на русском языке);
  • Курс на YouTube по SQL.

Логическое НЕ (!)

Оператор логическое НЕ, его также называют отрицание обозначается знаком . Он является унарным оператором, помещаемым перед одиночным операндом. Оператор «логическое НЕ» используется для инверсии логического значения своего операнда и всегда возвращает или .

Если потребуется инвертировать значение выражения, например , необходимо будет использовать круглые скобки: . Также с помощью оператора можно преобразовать любое значение в его логический эквивалент, дважды применив оператор: .

<?php
 
  $a1 = 10;
 
  var_dump((11 == 11));   // true
  
  // оператора ! инвертирует значение
  var_dump(!(11 == 11));  // false
  
  // преобразует в логическое значение
  var_dump(!!$a1);      // true

?>

С этой темой смотрят:

  • Выражения и операторы
  • Арифметические операторы
  • Операторы сравнения
  • Побитовые операторы

Операторы присваивания

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

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

Оператор название Синтаксис Операция
= Назначить $x = $y Операнд слева получает значение операнда справа
+= Добавить, затем присвоить результат $x += $y Простое сложение аналогично $x = $x + $y
-= Вычесть, затем присвоить результат $x -= $y Простое вычитание аналогично $x = $x — $y
*= Умножить и присвоить результат $x *= $y Простой продукт такой же, как $x = $x * $y
/= Разделить, затем присвоить результат (частное) $x /= $y Простое деление аналогично $x = $x / $y
%= Разделить, затем присвоить результат (остаток) $x %= $y Простое деление и получение остатка $x = $x % $y
.= Конкатенация-операнд $x .= $y Устанавливает значение левого операнда в строку, содержащую конкатенацию его значения, добавленного со строкой в ​​правом операнде $x = $x .= $y

Подробно о PHP

  1. Определение : Что такое php :
    PHP — это — серверный язык программирования. Заранее написанная программа(сценарий, скрипт) выполняется на сервере и выдается результат на экран — или не выдается, в зависимости от сценария.

    Верхняя строчка — это интерпретация понятия Php из учебника, только моими словами!

    Но как понять, что же такое php на самом деле — если вы, только сегодня, решили узнать — Что такое php?

    Итак… PHP это :

    вода, которая бежит по трубе.

    Это электричество в проводах.

    Это телевизионный сигнал в коаксиальном проводе.

    Это выработка холода в холодильнике.

    Или другими словами PHP это : процессы, которые мы не можем видеть, как они происходят, но результат мы можем наблюдать, после включения лампы – это свет, после открытия крана – это вода, после включения телевизора – это картинка на экране, после открытия холодильника — мы можем почувствовать холод… и т.д.

  2. Следующим пунктом, нам нужно узнать как PHP расшифровывается — они никак не переводятся — потому, что это аббревиатура.

    Поэтому, сперва нам нужно разобрать аббревиатуру PHP на слова:

    1). Первоначально аббревиатура PHP означала «Personal Home Pages», что переводится как Персональная домашняя страница. Первая версия PHP была создана Расмусом Лердорфом в 1994 г. и представляла собой набор инструментов для отслеживания посетителей Web-страницы.Но! после того, как php стал развиваться и уже не соответствовал первоначальной расшифровке — пришлось изменить его значение на:2). Аббревиатура PHP сейчас означает «Hypertext Preprocessor (Препроцессор Гипертекста)».

    Ну, а это, вообще понять невозможно с первого раза

    Одним предложением Hypertext Preprocessor (Препроцессор Гипертекста) – это программная генерация HTML разметки по содержимому базы данных или по любой другой структурированной информации, размещенной на сервере.

  3. Высокая производительность. PHP-программы работают быстрее, чем ASP.

    Функциональность. Разработку PHP-программы можно отделить от собственно разработки Web-страницы, что упростит жизнь и программисту, и дизайнеру.

    Цена. PHP абсолютно бесплатен.

    Простота в использовании. Имеющие опыт программирования на распространенных языках найдут синтаксис PHP хорошо знакомым.

    Переносимость. Один и тот же PHP-код можно использовать как в среде NT, так и на платформах UNIX

  4. Программа PHP(скрипт) — состоит из простого текста, для набора такого текста лучше использовать специализированные программы web-редакторы

    Стиль Открывающий тег Закрывающий тег
    Сокращенный <? ?>
    XML (стандартный) <?php ?>
    ASP <% %>
    SCRIPT (программный) <SCRIPT LANGUAGE=»php»> </SCRIPT>
  5. По умолчанию выполнение PHP — программы(далее просто скрипт) было привязано к файлам с расширением «.php» .

    Сегодня этот параметр — на разных серверах по -разному!

    Чтобы проверить, может ли работать скрипт у вас на html, в страницу html добавляем :

    <? echo ‘ПРИВЕТ МИР!’;?>
    Если вы увидели кроме текста все остальное, значит — нужно включить обработку php в html через файл HTACCESS

  6. Как вы уже видели в верхнем подпункте, обычно начинается изучение php с вывода некого текста. Открываем скрипт <? вовнутрь помещаем какое-то действие, например — функция echo, если это текст с пробелом, то нужны кавычки, либо одинарные либо двойные, точка с запятой… закончили строку, и закрываем скрипт?>.<? echo ‘ПРИВЕТ МИР!’;?>

    Результат выполнения скрипта:

    ПРИВЕТ МИР!
    Но это очень скучно! Простой глупый текст…Попробуем вывести, что-то динамическое, например время… давайте выведем сегодняшнюю дату с секундами…

    Это будет функция date и год, день, час, минуты, секунды…

    echo date(‘Y.m.d — h:i:s’);

    Результат:

    Посмотрите на секунды…перезагрузите страницу…

    2021.11.29 — 12:26:16

  7. Php это сказка! Вы не поверите, когда я начал изучать Php, то через некоторое время я понял, что именно этого мне не хватало в жизни и что именно этим я бы хотел заниматься!

Пользуйтесь на здоровье! Не забудьте сказать

Теги :PHP язык программированияязык программирования phpназначение рнрPHP этоthis is PHPPHP etophp расшифровываетсяphp расшифровкачто такое язык программирования phpphp описание

Операторы массивов PHP

Операторы массивов PHP используются для сравнения массивов.

В следующей таблице приведён список операторов, работающих с массивами PHP:

Оператор название Синтаксис Операция
+ Объединение $x + $y Объединение массива $x и массива $y.
== Равно $x == $y TRUE в случае, если $x и $y содержат одни и те же элементы.
!= Не равно $x != $y TRUE если массив $x не равен массиву $y.
=== Тождественно равно $x === $y TRUE в случае, если $x и $y содержат одни и те же элементы в том же самом порядке.
!== Тождественно не равно $x !== $y TRUE если массив $x не равен тождественно массиву $y.
<> Не равно $x <> $y TRUE если массив $x не равен массиву $y.

5 последних уроков рубрики «PHP»

Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак

В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение

В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

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

Подборка PHP песочниц
Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Почему программисты ненавидят PHP

Если вы были хоть на одном форуме для программистов, то могли увидеть множество негативных высказываний.


10 худших языков программирования

Одна из причин ненависти к PHP — переменные. Если в других языках их нужно объявить заранее, да еще и указав тип, то в PHP можно просто поставить знак «$» в любой части кода.

Сравните код на C:

И код на PHP

С одной стороны, это упрощает жизнь. С другой — в переменную можно поместить что угодно и когда угодно. У них нет какого-то типа, а это значит, что число запросто может стать строкой. Если вы этого не хотели, то вместо вычислений вы получите ошибку. Это и дар, и проклятие одновременно.

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

Другие языки, вроде JavaScript, можно выносить в отдельный файл и оттуда взаимодействовать со страницей. В PHP же это будет выглядеть так:

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

Еще PHP достаточно прост в изучении, поэтому на нем создано около 83% сайтов по всему интернету. Его простота стала причиной появления миллионов сайтов с кривым кодом. Поэтому можно сказать, что ненависть вызвана неопытными разработчиками.

Новички любят всё усложнять и пишут так:

Хотя можно написать так:

И хотя таких примеров много и в других языках, именно простота PHP послужила благоприятной средой для появления всего этого добра. Если на C# придется постараться, чтобы заставить кривой код работать, то PHP постарается за вас.

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

В старых версиях была уязвимость, которая позволяла создать переменную через ссылку. То есть если сейчас из ссылки ?var=5 мы получим ячейку в супермассив $_GET, раньше создавалась еще и переменная $var. И если программист забывал выполнить проверку всех данных, то его сайт был в опасности. Сейчас этой уязвимости нет, как и многих других, но мнение людей все равно не меняется.

У PHP на самом деле много недостатков:

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

Многие ошибки исправляются, и с каждой версией их становится меньше, хотя PHP считают «мертвым» языком уже больше 20 лет.

Перспективы применения PHP

Сегодня активно применяются аналоги PHP – Angular, React, Node.js, Python. Некоторые разработчики даже довлеют за переход на Java и С. Но «старичок» пока держится и будет держаться долго. Все-таки слишком много сайтов разработано и продолжает разрабатываться с активным использованием функционала PHP (до 79%, если верить статистике W3Tech). Например, одни только сайты на CMS WordPress ежедневно создаются сотнями.

Преимущества использования PHP:

  1. низкий порог вхождения,
  2. проверенные инструменты разработки,
  3. крупное профессиональное сообщество,
  4. большая библиотека готовых решений,
  5. нетребовательность к рабочему окружению.

С точки зрения новичка – это хорошая платформа для изучения разработки веб-сайтов. Синтаксис языка входит в группу С-подобных, поэтому после PHP легко осваивать Java, C#, C++ и подобные платформы. Чуть сложнее будет переходить на Python или Goland, но это дело техники и желания освоиться с новыми направлениями.

Платформа продолжает развиваться, в нее внедряются лучшие практики других языков, на ней создаются фреймворки, которые сами по себе являются «новыми языками». PHP только выигрывает от этого благодаря своей надежности и универсальности.

Создаем простой скрипт

Давайте рассмотрим простой пример работы с PHP и создадим небольшой скрипт. Мы не будем подробно вникать в синтаксис языка и в назначение операторов, а лишь наглядно покажем, как PHP взаимодействует с HTML.

Для начала нам нужно установить компилятор PHP на компьютер. Так как мы выяснили, что PHP — это серверный язык, то существуют специальные готовые сборки веб-серверов, которые включают в себя, помимо PHP, и другие полезные инструменты, например, СУБД MySQL. Одной из таких сборок является Open Server. Для написания кода будем использовать текстовый редактор Sublime Text 3.

Перейдем в папку domains веб-сервера Open Server и создадим в ней новую папку example. Внутри папки example создадим2 файла: index.html и handler.php.

Код нашей главной страницы index.html будет иметь следующий вид:

Мы имеем форму с текстовым полем и кнопкой. Атрибут action тега <form> указывает на имя и путь файла-скрипта, который будет обрабатывать введенные данные, — в нашем случае это файл handler.php. Атрибут method указывает на способ передачи данных — get; также существует метод передачи post.

Напишем код для скрипта handler.php.

Немного разберем код:

  • В строках 3–5 создается три массива, которые содержат информацию о фруктах, овощах и ягодах. На самом деле подобного рода данные должны храниться в базе данных и затем из нее вытягиваться. Но в качестве примера мы ввели их вручную в коде.
  • В строке 7 создается переменная $searchText, которая содержит в себе введенное в текстовое поле значение. Это значение берется из суперглобального массива $_GET, в квадратных скобках которого указывается имя текстового поля, которое мы задали в файле index.html. Этот массив инициализируется при отправке формы.
  • В строках 9–15 сначала проверяется, была ли нажата кнопка отправки формы, которая имеет имя searchSubmit, затем происходит проверка введенного значения и, в зависимости от того, какой вид продукта ввел пользователь, в переменную $products записывается ранее созданный соответствующий массив.
  • В строках 17–28 происходит вывод массива на экран в виде таблицы. Как видите, PHP отличает HTML-теги от обычных строк и выводит в окно браузера с помощью функции echo HTML-таблицу.
  • В строке 22 происходит перебор нашего массива products с помощью специального оператора цикла foreach.

Чтобы придать таблице красивый вид, мы создадим небольшой файл стилей styles.css. Он подключается в файле handler.php во второй строчке кода.

Все готово. Запустим наш веб-сервер и в адресной строке браузера перейдем по адресу example.

Введем в поле значение «фрукты» и нажмем кнопку Поиск.

Откроется главная страница index.html.

В результате веб-сервер перебросил нас на выполнение скрипта handler.php, который, в свою очередь, отобразил на экране таблицу фруктов

Обратите внимание на адресную строку.

Так выглядит наш get-запрос.

После вопросительного знака указывается имя параметра, в данном случае это название поля searchText, и через знак «=» указывается его введенное значение. Таких пар «имя = значение» может быть несколько, они должны разделяться между собой знаком «&». Не рекомендуется использовать данный метод передачи, если вам нужно передать большой объем данных либо же какие-то конфиденциальные данные, например, логин и пароль. В таких случаях используется метод post.

При дальнейшем изучении — например, в рамках курса PHP-разработчик от Skillbox — вы обязательно узнаете о таких важных вещах, как взаимодействие PHP с базой данных, построение объектной модели, выполнение асинхронных запросов без перезагрузки страницы, и о том, как строится архитектура высоконагруженных систем.

Как осуществляется синтаксический анализ PHP

Поясним работу синтаксического анализатора РНР. Предположим, что вы
имеете файл, который содержит некоторый код HTML и некоторый код РНР.
Допустим, что этот документ имеет расширение .php. При запросе этого файла
браузером происходит следующее:

Web-браузер запрашивает у Web-сервера документ с расширением .php;
Web-сервер активизирует синтаксический анализатор РНР и пересылает запрос ему;
синтаксический анализатор РНР ищет запрошенный файл и просматривает
его для получения РНР-кода;
когда синтаксический анализатор РНР находит РНР-код, он выполняет его
и помещает готовый результат (если он есть) в то место запрошенного файла,
где раньше был РНР-код;
этот новый результирующий файл отправляется обратно Web-серверу;
Web-сервер пересылает его Web-браузеру;
Web-браузер отображает результат в своем рабочем окне.

Этот метод выполнения кода называется серверным. Метод, при котором
исполнение кода, такого, как JavaScript, выполняется браузером,
называется клиентским.

Чтобы смешивать в одном документе код РНР вместе с кодом HTML,
РНР-код должен быть отделен от HTML-кода. В следующем знакомстве вы узнаете,
как это сделать, используя начальный и конечный тэги РНР.

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

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

Adblock
detector