Как составить программу на php

Создайте файл с именем hello.php в корневом каталоге веб-сервера
(DOCUMENT_ROOT) и запишите в него следующее:

Пример #1 Первый скрипт на PHP: hello.php


<html>
<head>
<title>Тестируем PHP</title>
</head>
<body>
<?php echo '<p>Привет, мир!</p>'; ?>
</body>
</html>

Откройте данный файл в браузере, набрав имя вашего веб-сервера и
/hello.php. При локальной разработке эта ссылка
может быть чем-то вроде http://localhost/hello.php
или http://127.0.0.1/hello.php, но это зависит от
настроек вашего сервера. Если всё настроено правильно, этот файл
будет обработан PHP и браузер выведет следующий текст:

<html>
 <head>
  <title>PHP Test</title>
 </head>
 <body>
 <p>Hello World</p>
 </body>
</html>

Эта программа чрезвычайно проста, и для создания настолько простой
странички даже необязательно использовать PHP. Все, что она делает,
это вывод Hello World, используя инструкцию
PHP echo. Заметьте, что файл не обязан быть
выполняемым
или ещё как-то отличаться от других файлов.
Сервер знает, что этот файл должен быть обработан PHP, так как файл обладает
расширением «.php», о котором в настройках сервера сказано, что подобные
файлы должны передаваться PHP. Рассматривайте его как обычный HTML-файл,
которому посчастливилось заполучить набор специальных тегов (доступных также и вам),
способных на кучу интересных вещей.

Если у вас этот пример не отображает ничего или выводит окно загрузки,
или если вы видите весь этот файл в текстовом виде, то, скорее всего,
ваш веб-сервер не имеет поддержки PHP или был сконфигурирован неправильно.
Попросите вашего администратора сервера включить такую поддержку.
Предложите ему инструкцию по установке: раздел Установка
данной документации. Если же вы разрабатываете скрипты на PHP дома (локально),
то также прочтите эту главу, чтобы убедиться, что вы все настроили верно.
Убедитесь также, что вы запрашиваете файл у сервера через протокол http.
Если вы просто откроете файл из вашей файловой системы, он не будет
обработан PHP. Если проблемы всё же остались, не стесняйтесь попросить
помощи одним из » множества доступных способов
получения поддержки по PHP.

Цель примера — показать формат специальных тегов PHP. В этом примере
мы использовали <?php в качестве открывающего
тега, затем шли команды PHP, завершающиеся закрывающим тегом
?>. Таким образом можно где угодно «запрыгивать»
и «выпрыгивать» из режима PHP в HTML файле. Подробнее об этом можно прочесть
в разделе руководства
Основной синтаксис.

Замечание:
Замечание о переводах строк

Переводы строк немногое означают в HTML, однако считается хорошей идеей
поддерживать HTML в удобочитаемом виде, перенося его на новую строку.
PHP автоматически удаляет перевод строки, идущий сразу после закрывающего
тега ?>. Это может быть чрезвычайно полезно,
если вы используете множество блоков PHP-кода или подключаете PHP-файлы,
которые не должны ничего выводить. В то же время, это может приводить в
недоумение. Можно поставить пробел после закрывающего тега
?> и тогда пробел будет выведен вместе с переводом строки,
или же вы можете специально добавить перевод строки в последний вызов
echo/print из блока PHP-кода.

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

Существует множество текстовых редакторов и интегрированных сред
разработки (IDE), в которых вы можете создавать и редактировать файлы
PHP. Список некоторых редакторов содержится в разделе
» Список редакторов PHP.
Если вы хотите порекомендовать какой-либо редактор, посетите данную
страницу и попросите добавить редактор в список. Использование редактора
с подсветкой синтаксиса может быть очень большим подспорьем в вашей работе.

Замечание:
Пара слов о текстовых процессорах

Текстовые процессоры (StarOffice Writer, Microsoft Word, Abiword и др.) в большинстве
случаев не подходят для редактирования файлов PHP. Если вы всё же хотите использовать
какой-либо из них для тестового скрипта, убедитесь, что сохраняете файл как
простой текст (plain text), иначе PHP будет не в состоянии
прочесть и запустить ваш скрипт.

Теперь, когда вы успешно создали работающий PHP-скрипт, самое время создать самый
знаменитый PHP-скрипт! Вызовите функцию phpinfo() и вы увидите
множество полезной информации о вашей системе и настройке, такой как доступные
предопределённые переменные,
загруженные PHP-модули и параметры настройки.
Уделите некоторое время изучению этой важной информации.

Пример #2 Получение информации о системе из PHP

There are no user contributed notes for this page.

PHP (от англ. препроцессор гипертекста) – язык программирования общего назначения, широко используемый в веб-разработке. Сценарии PHP можно внедрять непосредственно в код HTML. В этой статье мы пройдемся по основам программирования на PHP: синтаксису, объявлению переменных, массивам, условным операторам, циклам и функциям. Также запустим двумя способами веб-сервер на локальной машине и соберем страничку из нескольких файлов PHP и фреймворка Bootstrap. В конце статьи приведем список литературы и бесплатные курсы по PHP для новичков.

Редакторы кода

Для удобного кодинга нам понадобится редактор кода (IDE). Популярные:

  • PhpStorm (платный, пробная версия на 30 дней);
  • Atom (бесплатно);
  • Visual Studio Code (бесплатно);
  • Sublime Text (бесплатно).

Как запустить PHP в Atom

Устанавливать PHP на компьютер и запускать веб-сервер мы будем в конце статьи в разделе «Собираем HTML-страницу». А пока для запуска PHP-сценариев достаточно добавить плагин Script в редакторе Atom.

Установка IDE

Как установить Atom в Ubuntu и Windows читайте в нашем самоучителе по Python.

Чтобы запустить PHP-сценарий в Atom перейдем в закладку Packages ScriptRun Script, либо нажмем на клавиши Ctrl + Shift + B (рис. 1).

Рис. 1. Запуск php-скрипта в редакторе Atom

Рис. 1. Запуск php-скрипта в редакторе Atom

1. Синтаксис

Код в PHP заключается в открывающий <?php и закрывающий ?> теги. Согласно стандарту кодирования PSR-12, закрывающий тег должен быть опущен в файлах, содержащих только код PHP. В конце строки ставят разделитель строк – точку с запятой ;. Если забыть поставить разделитель, то следующая строка кода соединится с предыдущей и интерпретатор PHP выдаст ошибку.

Выведем на экран строку Hello World (заключена в кавычки) с помощью команды echo:

        <?php
echo 'Hello, World.'; // Hello, World.
    

через функцию print:

        <?php
print 'Hello, World.'; // Hello, World.
    

через функцию printf (выводит отформатированную строку):

        <?php
printf('Hello, World.'); // Hello, World.
    

или через функцию print_r(), выводящую информацию в удобочитаемом виде:

        <?php
print_r('Hello, World.'); // Hello, World.
    

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

        <?php
print_r("Hello, World.nHello, Coder.");

/*
Hello, World.
Hello, Coder.
*/
    

2. Объявление переменной

PHP – язык со слабой типизацией, то есть перед объявлением переменной не нужно задавать ее тип. Чтобы объявить переменную, перед ее именем ставят знак доллара $:

        $animal = 'Cat';
    

Здесь:

переменной animal присвоили значение Сat.

Выведем на экран переменную animal:

        <?php
$animal = 'Cat';
echo $animal; // Cat
    

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

        <?php
$first_animal = $second_animal = $third_animal = 'Cat';

echo "$first_animal"; // Cat
echo "$second_animal"; // Cat
echo "$third_animal"; // Cat
    

Комментарии

Однострочный комментарий начинается с двух слешей // или хеш-символа #, а многострочный заключается в /* */:

        <?php
// однострочный комментарий

# однострочный комментарий

/*
многострочный 
комментарий
 */
    

3. Типы данных

3.1. Строки

Строка – набор символов, заключенный в одиночные '' или двойные кавычки "":

        <?php
$first_animal = 'Cat';
$second_animal = "Dog";
    

Конкатенация строк

Оператор конкатенации точка . соединяет левый и правый аргументы:

        <?php
$first_animal = 'Cat';
$second_animal = 'Dog';
$animals = $first_animal . $second_animal;

echo "$animals"; // CatDog

    

Оператор присваивания с конкатенацией .= присоединяет правый аргумент к левому:

        <?php
$first_animal = 'Cat';
$second_animal = 'Dog';
$third_animal = 'Giraffe';
$animals = $first_animal;
$animals .= $second_animal;
$animals .= $third_animal;

echo "$animals"; // CatDogGiraffe
    

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

        <?php
$first_animal = "Catn";
$second_animal = "Dogn";
$third_animal = "Giraffe";
$animals = $first_animal;
$animals .= $second_animal;
$animals .= $third_animal;

echo "$animals";


/*
Cat
Dog
Giraffe
 */
    

3.2. Числа

Целое число (integer) не имеет дробной части:

        <?php
$number_one = 5678; // целое положительное число
$number_two = -5678; // целое отрицательное число

    

Число с плавающей точкой

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

        <?php
$number_one = 1.5678; // 1.5678 – положительное число с плавающей точкой
$number_two = -1.5678; // -1.5678 – отрицательное число с плавающей точкой
$number_three = 1.5678e0; // 1.5678 – положительное число с плавающей точкой
$number_four = 1.5678e2; //  156.78 – положительное число с плавающей точкой
$number_five = 1.5678E-2; // 0.015678 – положительное число с плавающей точкой
    

Чтобы узнать тип переменной воспользуемся функцией gettype(), а для преобразования числа с плавающей точкой в целое число функцией intval():

        <?php
$number_one = 1.5678; // 1.5678 – положительное число с плавающей точкой

echo gettype($number_one); // double
$number_one = intval($number_one);
echo $number_one; // 1
echo gettype($number_one); // integer

    

Арифметические операторы

Оператор Операция
+ Сложение
Вычитание
* Умножение
/ Деление
% Деление по модулю
** Возведение в степень

Таблица 1. Арифметические операторы

        <?php
echo 2 + 4; // 6
echo 2 / 4; // 0.5
echo 2 * 4; // 8
echo 2 - 4; // -2
echo 2 % 4; // 2
echo 2 ** 4; // 16
    

Мы можем сложить два числа через запись $number_one = $number_one + $number_two; или через сокращенную запись $number_one += $number_two;:

        <?php
// полная запись
$number_one = 1;
$number_two = 3;
$number_one =  $number_one + $number_two;
echo $number_one; // 4

// сокращенная запись запись
$number_one = 1;
$number_two = 3;
$number_one += $number_two;
echo $number_one; // 4
    

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

Чтобы сравнить значения используют операторы сравнения, которые возвращают true или false:

        <?php
echo 4 > 0; // 1 – true
echo 4 <= 55; // 1 – true
echo 4 != 5; // 1 – true
echo 4 <=> 5; // -1
echo 4 <=> 4; // 0
echo 4 <=> 3; // 1

    

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

        <?php
echo 0 == 'hello'; // true, так как 0 = 0
echo 0 == 'hello3555'; // true, так как 0 = 0
echo 0 == '3555hello'; // false, так как 0 не равно 3555
echo 3555 == '3555hello'; // true, так как 3555 равно 3555

    
Оператор Значение
$n == $m True, если $n равно $m
$n === $m True, если $n равно $m и имеют одинаковые типы
$n! = $m True, если $n не равна $m
$n <> $m True, если $n не равна $m
$n !== $m True, если отличаются тип или значение переменных
$n < $m True, если $n меньше $m
$n > $m True, если $n больше $m
$n <= $m True, если $n меньше или равна $m
$n >= $m True, если $n больше или равна $m
$n <=> $m Возвращает -1, если $n меньше $m, 0 в случае равенства и 1, если $n больше $m

Таблица 2. Операторы сравнения

Порядок операций

Сначала считается выражение в скобках:

        <?php
print_r((2 * 4) + 5); // 13
    

4. Условный оператор if-else

Рис. 2. Условный оператор if в PHP

Рис. 2. Условный оператор if в PHP

Оператор if выполняет код, если выполняется условие. В противном случае выполняется код после else, который переводится, как «иначе», «в другом случае».

Синтаксис оператора if-else
        if (условие) выполнить_код else выполнить_другой_код
    

Напишем несколько условий с оператором if и if-else:

        <?php
if (2 < 5) {
    echo 'true';
}
// true

if (2 > 5) {
    echo 'true';
} else {
    echo 'false';
}
// false
    

для проверки дополнительных условий используется оператор elseif:

        <?php
$number = 15;

if ($number < 3) {
    echo 'Число меньше трех.';
} elseif ($number > 4 && $number < 10) {
    echo 'Число в промежутке от 4 до 10.';
} else {
    echo 'Число больше 10.';
}
// Число больше 10
    

Здесь:

&& – логический оператор И. В нашем условии проверяемое число должно быть больше четырех и меньше десяти.

Оператор Значение Результат
$n and $m И true, если и $n, и $m true
$n or $m Или true, если или $n, или $m true
$n xor $m Исключающее Или true, если $n, или $m true
! $n Отрицание true, если $n не true
$n && $m И true, если и $n, и $m true
$n || $m Или true, если или $n, или $m true

Таблица 3. Логические операторы

5. Тернарный оператор

Тернарный оператор сокращает запись проверяемого условия и имеет следующий синтаксис:

        условие ? выполнить_код_если_истинно : выполнить_код_если_ложно:
    

Проверим, переменная n больше 10 или нет. Если значение n больше 10, уменьшим значение n на единицу (декремент). В противном случае увеличим на единицу (инкремент).

        <?php
$n = 5;
$n > 10 ? $n-- : $n++;
echo $n; // 6
    

6. Переключатель switch

Переключатель switch проводит нестрогое сравнение == значений и передает управление соответствующему оператору case. Если значение не совпадает со значением из case, тогда выполняется переход к оператору default.

Синтаксис переключателя switch
        switch (переменная) {
    case 'значение1':
           код
        break;
    case 'значение2':
           код
        break;    
    default:
           код
        break;
}

    

Напишем конструкцию из переключателя switch и двух
операторов case:

        <?php
$n = 3;

switch ($n) {
    case 1:
        echo "Число равно двум.";
        break;
    case 2:
        echo "Число равно пяти.";
        break;
    default:
        echo "Значение по умолчанию.";
        break;
}
// Значение по умолчанию.
    

7. Цикл while

Рис. 3. Цикл while в PHP

Рис. 3. Цикл while в PHP

Оператор while выполняет код до тех пор, пока значение условия не станет ложным.

Синтаксис цикла while
        while (условие) {
    // код
}
    

Выведем на экран пять раз слово Hello.

        <?php
$m = 0;

while ($m < 4) {
    $m++;
    echo "Hellon";
}

/*
Hello
Hello
Hello
Hello
*/
    

Расшифровка:

while – обозначение цикла.

$m = 0 – начальное значение переменной m.

$m < 5 – условие, которое проверяется перед началом цикла.

$m++ – инкрементирование, то есть увеличение переменной на единицу.

echo "Hellon" – вывод на экран слово Hello каждый раз с новой строки n.

Другой способ записи с помощью декремента в условии:

        <?php
$m = 4;

while ($m--) {
    echo "Hellon";
}

/*
Hello
Hello
Hello
Hello
*/
    

Здесь:

$m-- – декрементация, то есть уменьшение значения переменной на единицу. В это примере знак декремента -- стоит после переменной, поэтому мы получим четыре итерации (от 4 до 0).

Если поставить оператор декремента перед переменной --$m, то мы получим три итерации (от 4 до 1):

        <?php
$m = 4;

while (--$m) {
    echo "Hellon";
}

/*
Hello
Hello
Hello
*/
    

8. Цикл do..while

Цикл do..while выполняется минимум один раз, так как условие выполнения цикла проверяется в конце итерации, а не в начале как в цикле while.

Синтаксис цикла do..while
        do {
    // код
} while (условие);

    

Напишем цикл, выводящий на экран четыре раза слово Hello:

        <?php
$a = 0;
do {
    echo "Hellon";
    $a++;
} while ($a < 4);

/*
Hello
Hello
Hello
Hello
*/
    

9. Цикл for

Рис. 4. Цикл for в PHP

Рис. 4. Цикл for в PHP

Когда нам известно количество итераций, вместо цикла while лучше использовать цикл for.

Синтаксис цикла for
        for (инициализация; условие_цикла; счетчик)
    тело_цикла
    
  1. Инициализирующее выражение выполняется один раз в начале цикла.
  2. Проверяется условие. Если оно истинно, то выполняется тело цикла. Если ложно, то выполнение цикла прерывается.
  3. В конце каждой итерации изменяется счетчик (увеличивается или уменьшается).

Цикл выполняется, до тех пор, пока условие истинно, то есть значение i не станет равным 4:

        <?php
for ($i=0; $i <= 4; $i++) {
    echo $i;
}

// 01234
    

10. Цикл foreach

Цикл foreach последовательно перебирает элементы массива.

Синтаксис цикла foreach
        foreach (массив as переменная) {
  инструкция
}
    

На каждой итерации переменной присваивается значение текущего элемента последовательности. Переберем все элементы массива и умножим каждый элемент на 3:

        <?php
$array = [1, 2, 3, 4];
foreach ($array as $number) {
    $number *= 3;
    echo $number;
}

// 36912
    

11. Массивы

Рис. 5. Индексы элементов в массиве PHP

Рис. 5. Индексы элементов в массиве PHP

Массивы – упорядоченная коллекция элементов с доступом по индексу или ключу. Индексный массив создается двумя способами:

Через функцию array():

        <?php
$a = array('Cat', 'Dog', 123);
echo $a[1]; // Dog

    

и через квадратные скобки []:

        <?php
$a = ['Cat', 'Dog', 123];
echo $a[1]; // Dog

    

Здесь:

echo $a[1] – вывести на экран второй элемент массива.

Нумерация массива начинается с 0. В нашем случаем элементу массива Cat соответствует порядковый номер 0, Dog1, 1232. Для обращения к элементу массива используется следующий синтаксис: $имя_массива[индекс_элемента].

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

Создадим пустой массив:

        <?php
$a = [];
    

Добавим в него несколько элементов и выведем на экран его содержимое:

        <?php
$array = [];
$array[] = 'Cat';
$array[] = 'Dog';
$array[] = 123;

print_r($array);

/*
Array
(
    [0] => Cat
    [1] => Dog
    [2] => 123
)
*/
    

Чтобы добавить новый элемент мы использовали запись $имя_массива[] = новый_элемент. Первый добавленный элемент получает индекс 0. Индексы следующих элементов увеличиваются на 1. Можно задать индекс самостоятельно. Для этого в квадратных скобках укажем нужный нам индекс:

        <?php
$array = [];
$array[100] = 'Cat';
$array[0] = 'Dog';
$array[33] = 123;

print_r($array[0]); // Dog
    

При добавлении непронумерованного элемента 5000, значение его индекса будет на единицу большего максимального значения индекса в массиве – 101:

        <?php
$array = [];
$array[100] = 'Cat';
$array[0] = 'Dog';
$array[33] = 123;
print_r($array);

/*
Array
(
    [100] => Cat
    [0] => Dog
    [33] => 123
)
*/

$array[] = 5000;
print_r($array);

/*
Array
(
    [100] => Cat
    [0] => Dog
    [33] => 123
    [101] => 5000
)
*/
    

Для удаления элемента из массива воспользуемся функцией unset():

        <?php
$array = ['Cat', 'Dog', 123];
unset($array[2]);
print_r($array);

/*
Array
(
    [0] => Cat
    [1] => Dog
)
*/

    

Здесь:

unset($array[2]) – удаление третьего элемента массива.

В качестве индекса также используют строки:

        <?php
$array = [];
$array['animal_one'] = 'Cat';
$array['animal_two'] = 'Dog';
$array['number'] = 123;

print_r($array['animal_two']); // Dog
    

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

Ассоциативный массив объявляется через символы =>:

        $имя_словаря = ['ключ1' => 'значение1', 'ключ2' => 'значение2']
    

Создадим ассоциативный массив:

        <?php
$array = ['first_key' => 'Cat', 'second_key' => 5000];
print_r($array);

/*
Array
(
    [first_key] => Cat
    [second_key] => 5000
)
*/
    

Здесь:

'first_key' – ключ.

'Cat' – значение.

Для поиска ключа по значению используем функцию array_search():

        <?php
$array = ['first_key' => 'Cat', 'second_key' => 5000];
print_r(array_search('Cat' ,$array)); // first_key
    

Здесь:

array_search('Cat' ,$array) – поиск ключа, соответствующего значению Cat в массиве array.

Чтобы подсчитать количество элементов в массиве воспользуемся функцией count():

        <?php
$array = ['first_key' => 'Cat', 'second_key' => 5000];
print_r(count($array)); // 2

    

Также можно создать многомерный массив:

        <?php
$array = ['animals' => ['Cat', 'Dog'], 'second_array' => [5000, 33, ['third_array' => ['Hello']]]];
print_r($array['animals'][1]); // Dog
print_r($array['second_array'][2]['third_array'][0]); // Hello
    

'animals' => ['Cat', 'Dog'] – ключ animals с двумя значениями: Cat и Dog.

'second_array' => [5000, 33, ['third_array' => ['Hello']]] – ключ second_array с тремя значениями: два числа 5000, 33 и массив, но уже со своим ключем third_array и значением Hello.

12. Функции

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

Существуют встроенные и пользовательские функции. Встроенные функции – print(), print_r() и так далее – придумали разработчики. Пользовательские функции программисты пишут самостоятельно.

Как объявить функцию

Синтаксис функции:

        function имяФункции(аргументФункции1, аргументФункции2, ...) {
    код
return результат
}
    

Здесь:

function – мы говорим интерпретатору, что отсюда начинается функция.

аргументФункции – переменные, которые передаются функции для выполнения кода.

имяФункции – чтобы вызывать функцию, ей нужно присвоить имя.

return – выдает результат работы функции.

Напишем и вызовем функцию, выводящую на экран фразу Hello, World.

        <?php
function helloMessage(){
    return print("Hello, World.");
}

helloMessage(); // Hello, World. – вызов функции
    

Аргументы функций

До этого мы рассматривали функции без аргументов – переменных, которые функция получает извне. Напишем функцию с аргументами, которая считает сумму трех чисел:

        <?php
function summation($a, $b, $c){
    return print($a + $b + $c);

}

summation(1, 2, 3); // 6
summation(100, 74, 8); // 182

    

Здесь:

$a, $b, $c – аргументы функции.

13. Собираем HTML-страницу

Чтобы просмотреть HTML-страницу, собранную из нескольких PHP-файлов, установим и запустим веб-сервер, разместим файлы в определенной папке и обратимся к файлу через браузер.

Запуск веб-сервера

Веб-сервер можно запустить несколькими способами:

  1. Через встроенный в PHP веб-сервер.
  2. Через сторонние инструменты: XAMPP, Open Server, Winginx.

Встроенный в PHP веб-сервер

Инструкция для Windows:

  1. Скачаем с официального сайта PHP и распакуем содержимое архива на диск.
  2. Откроем консоль и перейдем в папку с PHP, используя команду cd, например, cd php7.
  3. Создадим папку page командной mkdir page. В ней будут храниться файлы нашей странички.
  4. Введем в консоли php -S localhost:8000 -t P:php7page. Флаг -S означает, что мы запускаем сервер по адресу localhost на 8000 порту. Флаг -t указывает путь к корневой директории.

Инструкция для Ubuntu:

  1. Установим PHP командой sudo apt install php libapache2-mod-php php-mysql.
  2. Создадим в домашней директории папку page.
  3. Введем в консоли php -S localhost:8000 -t /home/USERNAME/page.

Чтобы проверить запущен ли сервер, перейдем по адресу http://localhost:8000/:

Рис. 6. Запуск встроенного в PHP веб-сервера

Рис. 6. Запуск встроенного в PHP веб-сервера

Если мы получили ошибку 404, значит сервер запущен.

XAMPP

Скачаем и установим XAMPP. В папке C:xampphtdocs создадим папку нашей странички page. Запустим веб-сервер Apache, кликнув по кнопке Start. Узнаем версию PHP, введя в консоли (Shell) команду php -v.

Рис. 7. Запуск сервера с помощью XAMPP

Рис. 7. Запуск сервера с помощью XAMPP

Проверим, запущен ли сервер, перейдя по адресу http://localhost/. Если появилось приветственное сообщение, значит сервер запущен.

Рис. 8. Запуск сервера с помощью XAMPP на Windows

Рис. 8. Запуск сервера с помощью XAMPP на Windows

14. Собираем страничку

Теперь создадим несколько PHP-файлов, из которых соберем страничку. Перейдем в папку page и создадим четыре файла: index.php, header.php, body.php, footer.php.

Структура простого HTML-документа выглядит следующим образом:

        <!DOCTYPE html>
<html>
 <head>
  <title>First page</title>
 </head> 
 <body>
  <header>

  </header>

  <footer>

  </footer>
 </body> 
</html>

    

Воспользуемся фреймворком Bootstrap, чтобы ускорить создание странички. Скачивать ничего не нужно, просто вставим ссылку на Bootstrap в тег <head>:

        <!DOCTYPE html>
<html>
 <head>
  <title>First page</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
 </head> 
 <body>
  <header>
  </header>
  <footer>
  </footer>
 </body> 
</html>

    

Откроем файл header.php и вставим в него следующий код:

        <!DOCTYPE html>
<html>

<head>
    <title>First page</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
</head>

<body>
    <header>
        <ul class="nav justify-content-center">
            <li class="nav-item">
                <a class="nav-link active" aria-current="page" href="#">Active</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Ссылка</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Ссылка</a>
            </li>
        </ul>
    </header>
    

в файл body.php:

            <div class="card-group">
        <div class="card">
            <img src="https://upload.wikimedia.org/wikipedia/commons/2/27/PHP-logo.svg" class="card-img-top" alt="...">
            <div class="card-body">
                <h5 class="card-title">Что такое PHP?</h5>
                <p class="card-text">PHP — скриптовый язык общего назначения, интенсивно применяемый для разработки веб-приложений. </p>
                <p class="card-text"><small class="text-muted">Добавлено 5 минут назад</small></p>
            </div>
        </div>
        <div class="card">
            <img src="https://upload.wikimedia.org/wikipedia/commons/2/27/PHP-logo.svg" class="card-img-top" alt="...">
            <div class="card-body">
                <h5 class="card-title">Что такое PHP?</h5>
                <p class="card-text">PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста»; первоначально PHP/FI (Personal Home Page / Form Interpreter), а позже названный Personal Home Page Tools</p>
                <p class="card-text"><small class="text-muted">Добавлено 8 минут назад</small></p>
            </div>
        </div>
        <div class="card">
            <img src="https://upload.wikimedia.org/wikipedia/commons/2/27/PHP-logo.svg" class="card-img-top" alt="...">
            <div class="card-body">
                <h5 class="card-title">Что такое PHP?</h5>
                <p class="card-text">В области веб-программирования, в частности серверной части, PHP — один из популярных сценарных языков (наряду с JSP, Perl и языками, используемыми в ASP.NET).</p>
                <p class="card-text"><small class="text-muted">Добавлено 10 минут назад</small></p>
            </div>
        </div>
    </div>

    

в файл footer.php:

            <footer>
        <nav aria-label="Page navigation example">
            <ul class="pagination">
                <li class="page-item"><a class="page-link" href="#">Назад</a></li>
                <li class="page-item"><a class="page-link" href="#">1</a></li>
                <li class="page-item"><a class="page-link" href="#">2</a></li>
                <li class="page-item"><a class="page-link" href="#">3</a></li>
                <li class="page-item"><a class="page-link" href="#">Вперед</a></li>
            </ul>
        </nav>
    </footer>
    </body>

</html>

    

в файл index.php:

        <?php

include 'header.php';
include 'body.php' ;
include 'footer.php';

    

Здесь:

include – инструкция, которая подключает к PHP-сценарию другие сценарии. Также сценарии подключают с помощью инструкций require, include_once и require_once. Они отличаются по реакции на отсутствие подключаемого файла.

Откроем страницу, перейдя на http://localhost:8000/ или http://localhost/page/. Должно получиться как на рис. 9.

Рис. 9. HTML-страница, собранная из php-файлов

Рис. 9. HTML-страница, собранная из php-файлов

***

Литература

  • Робин Никсон. Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5;
  • Котеров, Симдянов. PHP 7;
  • Веллинг, Томсон. Разработка веб-приложений с помощью PHP и MySQL;

Остальные книги указаны в нашей статье ТОП-10 книг по PHP: от новичка до профессионала.

Шпаргалки

  • Шпаргалка по PHP
  • Основы PHP

YouTube-каналы и курсы

Бесплатные курсы на русском языке:

  • Основы php с нуля. Новейший курс 2020 – двадцать четыре урока от основ до регулярных выражений и функций;
  • Базовый курс по PHP 7 – узнаете про базовые понятия, GET-параметры, методы, функции и ООП;
  • Учим PHP за 1 Час – основы за полтора часа;
  • Изучение PHP для начинающих – научитесь работать с массивами, подключать файлы, обрабатывать формы, работать с куки и базой данных MySQL;
  • Уроки PHP 7 – много уроков по ООП;
  • PHP для начинающих – курс на Stepik для начинающих разработчиков, не требует специальных знаний;
  • PHP – первое знакомство – азы программирования на PHP (Stepik).
  • подписывайтесь на тег PHP, чтобы получать уведомления о новых статьях;
  • телеграм-канал «Библиотека пхпшника»;
  • книги по программированию в нашем телеграм-канале «Книги для программистов».

***

Итог

  • вы познакомились с синтаксисом PHP и типами данных;
  • узнали, как работают условные операторы и циклы;
  • запустили веб-сервер в Ubuntu и Windows;
  • собрали страничку HTML из файлов PHP.

23 июня, 2021 12:14 пп
1 162 views
| Комментариев нет

Development, PHP

«Hello, World!» – это классическая тестовая программа в мире разработки ПО. Ее по традиции пишут, чтобы убедиться, что в установке все работает должным образом. С нее чаще всего начинается изучение нового языка – она отлично иллюстрирует основной синтаксис языков программирования.

Это руководство поможет вам написать программу «Hello, World!» на PHP. Вы узнаете, как правильно открывать и закрывать блоки PHP в своем коде, а также научитесь использовать различные типы комментариев.

Требования

На вашем компьютере вам понадобится установка PHP и локальная среда разработки. Создать все необходимые для работы условия вам поможет наше руководство Настройка локальной среды разработки PHP 7.4.

Написание программы «Hello, World!»

Давайте приступим к написанию программы «Hello, World!». С помощью командной строки откройте текстовый редактор, например nano, и создайте новый файл:

nano hello.php

Как только текстовый файл откроется в окне терминала, введите код нашей программы:

<?php
echo "Hello, World!";
?>

Давайте рассмотрим компоненты этого кода по порядку.

Весь PHP-код помещен в блок, который начинается с <?php и заканчивается ?>.

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

В нашем случае между ними находится последовательность символов, заключенная в двойные кавычки – “Hello, World!”. Любые символы, заключенные в кавычки, называются строкой.

Читайте также: Как работают строки в PHP

После написания программы нажмите клавишу X, удерживая CTRL, чтобы выйти из nano. Когда будет предложено сохранить файл, нажмите Y.

Как только вы выйдете из nano, вы попадете обратно в свою оболочку.

Наша простая программа «Hello, World!» готова.

Как запустить программу «Hello, World!»

Теперь программа готова к запуску. Чтобы запустить ее, используйте команду php с именем файла программы:

php hello.php

Запустив hello.php, вы получите в терминале следующий результат:

Hello, World!

Давайте рассмотрим более подробно, что именно делала программа.

PHP следующим образом выполнил строку echo “Hello, World!”;

  • Он вызывал языковую конструкцию echo.
  • Строковое значение Hello, World! было передано этой конструкции. В данном примере строка Hello, World! также является аргументом, поскольку это значение передается другой части кода, например конструкции или функции.

Кавычки по обе стороны от Hello, World! не выводятся на экран: они используются, чтобы сообщить PHP, что этот фрагмент кода содержит строку. Проще говоря, кавычки обозначают начало и конец строки.

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

Расширение кода PHP

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

Обновите свой файл hello.php:

Hi 8host
<?php echo "Hello, World!"; ?>

How are you doing?
<?php echo "Cloudy!";

Сохраните файл и перезапустите его. Вы получите такой результат:

Hi 8host
Hello, World!
How are you doing?
Cloudy!

Если вы внимательно посмотрите на код, вы заметите, что Hi 8host и How are you doing? находятся за пределами блоков кода PHP и поэтому при запуске программы отображаются как простой текст.

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

Закрывающий тег блока (?>) включать не нужно, если блок идет в конце файла. Если файл заканчивается блоком кода PHP, этот блок рекомендуется не закрывать тегом. Дело в том, что любой символ, идущий после закрывающего тега (даже пробел), будет выводиться на экран в виде HTML или обычного текста, а это может вызвать неожиданные последствия для работы приложения. Например, функции типа перенаправления не будут обрабатываться, если что-нибудь было выведено в браузер. Если ваш файл содержит только код PHP, никогда не включайте закрывающий тег PHP.

По мере усложнения кода полезно оставлять заметки для себя и других. Это можно сделать с помощью комментариев.

Добавление комментариев в PHP

Комментарий в коде – это строка, которая не будет выполняться как часть программы. Ее единственная цель – предоставить информацию человеку, который смотрит на код. Иногда код читается гораздо медленнее, чем пишется – многих разработчиков до сих пор шокирует эта разница во времени. Следовательно, очень важно, чтобы код был как можно более легким для чтения. Этого можно добиться несколькими способами:

  • Следуйте стандартам написания кода. Стандарт – это набор руководящих принципов и передовых практик для четкой и последовательной организации и форматирования кода. В PHP наиболее часто применяются стандарты PHP-FIG (Framework Interop Group).
  • Быстро читаемый код лучше, чем быстро написанный код. Используйте описательные переменные вместо сокращений. Думайте не о том, сколько строк кода вы напишете, а о том, сколько времени потребуется, чтобы посторонний разработчик прочитал эти строки и понял, что делает эта программа.
  • Пишите комментарии. Хотя это не обязательно, если вы следовали двум предыдущим пунктам. В целом же ваш код должен быть понятным другим людям, а комментарии объясняют, почему что-то происходит именно так, а не иначе.

В PHP есть два типа комментариев: однострочные и многострочные. Однострочные комментарии могут начинаться в любом месте строки и заканчиваться либо в конце строки, либо в конце блока кода (в зависимости от того, что наступит раньше).

Наиболее распространенный способ начать однострочный комментарий – поставить двойной слеш (//), хотя PHP также распознает диез (#) как начало однострочного комментария. Добавьте в наш файл пару однострочных комментариев, чтобы потренироваться:

Hi 8host
<?php echo "Hello"; //, World!"; ?>

How are you doing?
<?php echo "Cloudy!";
// other options: Flying along

Сохраните и запустите файл. Вы увидите:

Hi 8host
Hello
How are you doing?
Cloudy!

Первый комментарий начинается в середине строки. Заключительная кавычка и точка с запятой идут после «Hello», а остальная часть строки закомментирована. Комментирование одной или нескольких строк кода часто используется при отладке – это позволяет проверить, как программа реагирует на удаление определенных элементов кода.

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

Многострочные комментарии начинаются с символов /* и заканчиваются */. Интерпретатор PHP проигнорирует любой текст или код внутри этих символов. Чтобы потренироваться, давайте превратим последнюю строку в многострочный комментарий:

Hi 8host
<?php echo "Hello"; //, World!"; ?>

How are you doing?
<?php echo "Cloudy!";
/* When responding with one of a number of answers, here are some other options:
* Flying along
* Fantastic
* Going with the wind
* I am a breath of fresh air
* I have my head in the clouds
*/

Многострочные комментарии дают возможность поместить больше деталей, чтобы еще немного упростить понимание кода и его предназначения. Наш многострочный комментарий включает разрывы строк и использует символ звездочки (*) в качестве маркера списка. Комбинация */ – это закрывающий тег, он указывает на конец нашего блока комментариев.

Документирование с помощью DocBlocks

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

DocBlock состоит из нескольких частей. Первая часть – это краткое описание элемента (либо более подробное описание, если требуется больше контекста).

Последний раздел, который и делает DocBlock уникальным, – это теги и аннотации. Этот раздел дает возможность кратко и организованно предоставить метаинформацию о заданном элементе. Теги могут, например, описывать тип информации, которую принимает или возвращает метод или функция. также этот раздел может содержать подробную информацию об авторе или авторских правах. Вот пример такого комментария:

<?php
/**
 * DocBlock example
 *
 * @author 8host <8host@8host.com>
 */
 ...

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

Заключение

В этом руководстве вы написали простую программу «Hello, World!» на PHP. Также мы поговорили о блоках кода PHP, тегах и видах комментариев.

Tags: PHP

#Руководства

  • 3 ноя 2022

  • 5

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

Иллюстрация: Оля Ежак для Skillbox Media

Виталий Чесноков

Выпускник факультета автоматизации и информатики МГГУ, исполнительный директор компании QSOFT.

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

  • Что пишут на языке программирования PHP
  • Почему PHP востребован и популярен в веб-разработке
  • Сколько зарабатывают начинающие и опытные разработчики
  • Что нужно знать и как новичку развиваться в профессии
  • Какие книги почитать для самостоятельного изучения PHP
  • Как написать простой скрипт и сайт

Язык программирования PHP применяют преимущественно в разработке сайтов и веб-приложений, а именно в бэкенде.

Все сайты, которые мы видим в интернете, состоят из двух частей: фронтенда и бэкенда. То, что видит пользователь, — анимация, слайдеры, выпадающие меню и прочее, — это фронтенд. Дизайнеры рисуют макет сайта, а разработчики превращают его в код на HTML, CSS и JavaScript.

На уровне бэкенда создаётся сама платформа, которая связывает сайт с внутренними серверными системами, обрабатывает пользовательские запросы, общается с базой данных и передаёт результаты во фронтенд. Именно для создания бэкенда и используется язык PHP.

Языку PHP уже более 20 лет. Он был разработан датчанином Расмусом Лердорфом в 1994 году как надстройка, которая показывала количество посещений его персональной странички. Тогда он назвал её просто — Personal Home Page.

Язык непрерывно эволюционирует. В 2004 году вышел PHP 5, который добился большой популярности у веб-разработчиков благодаря хорошей реализации ООП. В декабре 2015 года вышла седьмая версия, которая позволила создавать более быстрые программы. PHP 8 появился в ноябре 2020 года, а на 24 ноября 2022 года намечен выход версии 8.2.

По данным W3Techs, доля веб-сайтов с бэкендом на PHP составляет около 80%. В первую очередь это связано с тем, что на нём написаны популярные CMS WordPress и Drupal. Кроме того, на PHP написаны «Фейсбук»*, «ВКонтакте», поисковая система Yahoo, «Википедия», немалая часть сервисов Google и отечественная CMS «1С-Битрикс».

Крупнейшие мировые компании, которые используют язык PHP
Изображение: Skillbox Media

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

Несмотря на то что PHP уже десять лет пророчат скорую смерть, он остаётся самым востребованным языком программирования. Доля вакансий, в которых требуется знание PHP, составляет 24,6%. Примерно столько же занимает Java с 24,1%. А третий по популярности С# значительно отстаёт — 9,8%.

PHP, Java и C# — самые популярные у работодателей языки
Изображение: Skillbox Media

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

Согласно HeadHunter, зарплатный максимум PHP-программиста в России составляет 10 тысяч долларов. Если разделить зарплаты по уровням профессионального развития программиста, то цифры такие:

  • Junior Developer — от 40 тысяч рублей в месяц.Только входит в профессию, умеет работать с легаси-кодом и писать простые скрипты, имеет коммерческий опыт программирования порядка 2–3 месяцев.
  • Middle Developer — от 100 тысяч рублей в месяц.Может самостоятельно справиться с 90% поставленных задач и имеет опыт программирования от шести месяцев до года.
  • Senior Developer — от 150 тысяч рублей в месяц.Может решить любую задачу на PHP, спроектировать решение, архитектуру, подобрать код и обучить junior- или middle-программиста выполнять эти задачи.

В 2022 году зарплаты PHP-разработчиков в России выросли сильнее, чем зарплаты программистов на всех других языках. Джунам чаще стали предлагать от 60 тысяч рублей в месяц, а сеньорам — от 400 тысяч.

Рассмотрим технологии, которые должен освоить начинающий бэкенд-разработчик.

  • HTML и CSS — языки разметки страницы. Чаще всех их используют фронтенд-разработчики, но вам нужно знать и понимать основы, так как придётся работать с готовой разметкой.
  • JavaScript — код, выполняемый на стороне клиента (браузера). Он задаёт механику работы страницы. Необходимо уметь читать его и понимать, для чего нужен тот или иной его кусок.
  • PHP — ядро сайта, скриптовый язык, работающий на уровне сервера и взаимодействующий с серверными структурами, на которых строится веб-проект.
  • SQL — язык структурированных запросов, применяемый для управления базами данных, например, в СУБД MySQL.
  • Linux — да, именно Linux. Windows не предназначена для использования в качестве операционной системы для сервера, хотя PHP может работать как в Windows, так и в Linux. В рамках обучения не обязательно использовать именно Linux, но важно знать, что в реальных проектах серверы обычно работают под этой операционной системой.

Вот самые популярные и проверенные временем книги, в которых излагаются основы языка, работы с разметкой, принципы взаимодействия бэкенда и фронтенда и наиболее важные концепции веб-программирования:

  • «PHP 7. В подлиннике», Дмитрий Котеров, Игорь Симдянов.
  • «Изучаем PHP 7. Руководство по созданию интерактивных сайтов», Дэвид Скляр.
  • «Создаём динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5», Робин Никсон.
  • «PHP. Объекты, шаблоны и методики программирования», Мэтт Зандстра.
  • «Разработка веб-приложений с помощью PHP и MySQL», Люк Веллинг, Лора Томсон.

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

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

Ниже приведены инструкции для операционных систем Windows, Linux и macOS.

Скачать PHP на Windows можно с официального сайта, предварительно выбрав подходящую версию языка и операционную систему. Мы установим PHP 8.1 для 64-битной системы, для других версий процедура будет такой же.

Выбираем нужную версию PHP и вариант VS16×64 Thread Safe:

Скачиваем последнюю версию PHP с официального сайта языка
Скриншот: Skillbox Media

Теперь нужно распаковать архив в любое место на жёстком диске и запомнить путь до этой папки. Мы распакуем в папку C:Program Filesphp-8.1.0:

Распаковываем архив в любом удобном месте на жёстком диске
Скриншот: Skillbox Media

Дальше нужно указать системе, что мы установили PHP. Нажимаем правой кнопкой на «Этот компьютер» → «Свойства» → «Дополнительные параметры системы» → «Переменные среды»:

Скриншот: Skillbox Media

Выберите сверху и снизу Path → нажмите «Изменить». У вас откроется окно, в котором нужно нажать «Создать» в меню справа, а затем задать путь к папке PHP (в нашем случае это C:Program Filesphp-8.1.0). Затем нажмите «ОК»:

Сюда вписываем путь до папки, где находится PHP
Скриншот: Skillbox Media

PHP установлен. Чтобы это проверить, открываем командную строку и пишем там команду php -v:

Если PHP установлен правильно, выведется примерно такое
Скриншот: Skillbox Media

А чтобы запустить PHP-код, нужно создать текстовый файл с расширением .php и написать там какой-нибудь код. Например, такой:

Мы создали файл с расширением .php и написали в нём код, который выводит «Hello world!»
Скриншот: Skillbox Media

Теперь заходим в папку с этим файлом, нажимаем правую кнопку мыши и выбираем пункт «Открыть окно PowerShell здесь».

Открываем PowerShell, чтобы запустить PHP-код
Скриншот: Skillbox Media

В открывшемся окне пишем команду php test.php — в консоли должна вывестись наша строка:

Если строка вывелась, значит, PHP работает
Скриншот: Skillbox Media

Перед установкой обновите систему, чтобы во время установки не возникло ошибок:

sudo apt update

Затем установите PHP:

sudo apt install php

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

Сначала установим предварительные условия:

sudo apt install software-properties-common -y

А потом и сам репозиторий:

sudo add-apt-repository ppa:ondrej/php

И ещё раз обновим локальные пакеты, чтобы можно было использовать добавленный репозиторий:

sudo apt update

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

Заходим на официальный сайт и копируем команду, которую нам предлагают:

Скриншот: Skillbox Media

Открываем терминал: меню приложений → папка «Прочие» → «Терминал». Далее вводим команду:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Дальше в терминале вы увидите следующие инструкции по установке. Нужно будет добавить brew в путь системы. Найдите вот эту строчку и скопируйте все команды оттуда:

Затем вставьте их снова в терминал, и установка brew будет окончена.

Наконец, устанавливаем сам PHP с помощью команды brew install php:

Скриншот: Skillbox Media

Чтобы проверить корректность установки, введите в терминале команду php -v:

Скриншот: Skillbox Media

В консоли должна вывестись версия языка, который вы только что установили.

Писать код будем в текстовом редакторе Sublime Text 3, его можно скачать бесплатно на официальном сайте. Создадим папку Server в любом месте на жёстком диске и добавим в неё три файла: index.html, handler.php и styles.css.

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

<!DOCTYPE html>
<html lang="en">
<head>
     <meta charset="UTF-8">
     <title>Example</title>
</head>
<body>
     <form action="handler.php" method="get">
         <label>
            Продукт
            <input type="text" name="searchText">
         </label>
         <input type="submit" name="searchSubmit" value="Поиск">
     </form>
</body>
</html>

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

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

<?php
   echo "<link rel='stylesheet' href='styles.css'>";
   $fruits = array('Яблоки' => '30кг', 'Груши' => '50кг', 'Бананы' => '20кг');
   $vegetables = array('Картошка' => '100кг', 'Огурцы' => '80кг', 'Помидоры' => '50кг');
   $berries = array('Вишня' => '20кг', 'Виноград' => '30кг', 'Малина' => '50кг');

   $searchText = mb_strtolower($_GET['searchText']);

   if(isset($_GET['searchSubmit'])){
       if($searchText == 'фрукты')
           $products = $fruits;
       elseif ($searchText == 'овощи')
           $products = $vegetables;
       elseif ($searchText == 'ягоды')
           $products = $berries;

       echo '<table>
              <thead>
                 <td>Продукт</td>
                 <td>Количество</td>
              </thead>';
       foreach ((array)$products as $key => $value) {
           echo '<tr>
                   <td>'. $key .'</td>
                   <td>'. $value .'</td>
               </tr>';
       }
       echo '<table>';
    }
?>

Что тут происходит:

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

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

Код styles.css такой:

table {
    background: rgb(182, 182, 182);
    border: 2px solid rgb(0, 0, 0);
    border-collapse: collapse;
}

thead {
    background: rgb(11, 135, 28);
    color: white;
}

td {
    padding-right: 10px;
}

Всё готово. Теперь нужно запустить веб-сервер. Для этого в терминале перейдём в папку с нашими файлами. Введите команду cd и укажите полный путь до вашей папки с файлами — например, C:Program FilesServer. У нас на macOS будет такая команда:

Скриншот: Skillbox Media

Здесь вводим в консоли команду php -S 127.0.0.1:8000:

Скриншот: Skillbox Media

Сервер запустился. Теперь открываем браузер и переходим на сайт: http://127.0.0.1:8000/. Готово — вы видите ваш сайт.

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

Скриншот: Skillbox Media

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

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

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

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

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

Научитесь: Профессия PHP-разработчик с нуля до PRO
Узнать больше

Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

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

Как написать простую программу

Чтобы написать программу и вывести результат на экран, используют два способа:

  • Через команду echo
  • Через команду print_r()

Разберем каждую подробнее.

Пишем программу через echo

Напишем программу «Hello, World!». Она будет выводить на экран текст:

<?php

echo 'Hello, World!';
// => Hello, World!

Вывод на экран выполняется с помощью специальной команды echo. После нее в одиночных кавычках указывается строка для вывода. В конце обязательно ставим точку с запятой.

Для удобства мы будем показывать результат запуска строк кода так: => РЕЗУЛЬТАТ.

Пишем программу через print_r()

Другой способ вывести строку на экран — функция print_r():

Hello World

<?php

print_r('Hello, World!');
// => Hello, World!

В этом случае строка указывается в скобках сразу после имени функции. В конце также нужно ставить ;.

В простых ситуациях между этими конструкциями нет разницы. Можно использовать любой способ. А там, где на экран нужно выводить не просто числа или строки, а, например, массивы, echo не сможет этого сделать, а print_r() все выведет.

Разберем другие особенности вывода результата на экран.

Зачем использовать теги

Чтобы интерпретатор — программа, которая выполняет код, — восприняла его не как обычный текст, любой код на PHP нужно оборачивать в конструкцию <?php ?>. Это особенность данного языка программирования.

<?php — это открывающий тег, а ?> — закрывающий тег. PHP позволяет не указывать закрывающую часть ?>. А руководство по оформлению кода PSR-12 запрещает ее указывать.

Теперь разберем еще один элемент кода — комментарии. Они особенно важны для разработчиков.

Зачем нужны комментарии

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

Комментарии в PHP бывают двух видов:

  • Однострочные комментарии — начинаются с //. После этих символов может следовать любой текст, вся строка не будет анализироваться и исполняться:
  <?php

  // For Winterfell!
  // For Lanisters!
  // Комментарий может находиться на строке после какого-нибудь кода
  print_r('I am the King'); // For Lannisters!
  • Многострочные комментарии — начинаются с /* и заканчиваются на */. Между ними каждая строка должна начинаться с символа *:
  <?php
  /*
   * The night is dark and
   * full of terrors.
   */
  print_r('I am the King');

Выводы

В этом уроке мы научились создавать простую программу на языке PHP, которая выводит на экран текст «Hello, World!». Мы узнали, что для выводы результата можно использовать два варианта: через команды echo или print_r().

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


Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты.

Понравилась статья? Поделить с друзьями:
  • Как исправить все тройки в вузе
  • Как правильно составить силлогизм
  • Как найти хорошего гастроэнтеролога в воронеже
  • Bad module info windows 10 как исправить dayz
  • Как найти площадь фигуры заданной функцией