Привет всем! Сегодня попробуем ускориться в изучении PHP, и в рамках записи разберем сразу несколько вопросов. Будет сумбурно (наверное), а там — вдруг не очень? Итак, поехали!
1. Вставка PHP-кода в HTML-страницу:
<html> <head> <title>Пример/title> </head> <body> Какой-то наш код для примера <?php echo "Происходит исполнение скрипта"; ?> И снова код страницы </body> </html>
- Конкатенация (сложение) строк делается с помощью точки. Смотрим пример:
<?php echo "Hello, "."world"."!"; #Hello, world! ?>
- Создание переменной + присвоение этой переменной случайного числа и вывод полученного значения. Сразу уточню — в PHP есть два варианта генерации случайных чисел:
— функция rand(min, max);
— и второй вариант — более случайный по сравнению с первым, и работающий в четыре раза быстрее — mt_rand(min, max);
— есть и третий вариант, который позволяет генерировать криптографически безопасные числа — random_int(min, max);
Посмотрим на примере (возьмем второй вариант генерации случайных чисел).
<?php $random_number = mt_rand(1, 999); echo ("Random number: "), $random_number; ?>
- Генерация случайного набора символов из имеющегося списка:
<?php $symbol = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; echo substr(str_shuffle($symbol), 0, 12); ?>
где:
— $symbol — список всех символов, из которых мы будем выдергивать случайные 12 (для этого служит str_shuffle(откуда), начальное количество символов, конечное количество символов)
- Математические действия в PHP (сгенерируем два случайных числа, которые сложим-вычтем-умножим-разделим):
<?php $variable1 = mt_rand(1, 999); $variable2 = mt_rand(1, 999); echo("Переменная 1: "), $variable1; echo nl2br("\r\n"); echo("Переменная 2: "), $variable2; echo nl2br("\r\n"); echo ("Сложение: ".$variable1 + $variable2); echo nl2br("\r\n"); echo("Вычитание: "), $variable1 - $variable2; echo nl2br("\r\n"); echo("Умножение: "), $variable1 * $variable2; echo nl2br("\r\n"); echo("Деление: "), $variable1 / $variable2; ?>
и да — вот этот код: echo nl2br(«\r\n»); — для переноса строки. Я пока не разобрался, как это сделать более культурно 🙁 Но все впереди… если знаете, как это реализовать нормально и правильно — подскажите, пожалуйста 🙂
- Операторы сравнения:
> Больше, чем < Меньше, чем >= Меньше или равно <= Больше или равно == Равно != Не равно
- Пример работы с оператором if:
<?php $random_number = mt_rand(1,7); echo "Случайное число: ", $random_number; if ($random_number > 5) { echo nl2br("\r\n"); echo "Ух ты! Вам выпало число больше 5 :) !"; } ?>
Тут вроде все просто… 🙂 Если условие выполняется — делаем то, что указано в фигурных скобках. Если нет — то не выводим.
- Пример работы с оператором else:
<?php $name="Edgar"; if ($name=="Edgar") { echo "Я тебя знаю :)"; } else { echo "А ты кто такой вообще?"; } ?>
Собственно — тоже все просто: если переменная $name равна «Эдгар» — выводим сообщение, что мы его знаем. А если переменная не равна «Эдгар» — выводим сообщение о том, что мы не знаем, кто это.
- Пример работы с оператором switch. Зачем он нужен вообще? Иногда бывает так, что действия программы нельзя (или скучно) сформировать операторами if|else|elseif. Именно для этого случая имеется оператор switch, с помощью которого мы можем оперировать неограниченным количеством ветвлений программы. Более подробно код, показанный ниже выглядит так: switch (случайное число) задает номер ветки, по которой будет идти программа. Конструкция case 0 (1, 2) — параметр, который сравнивается программой с указанным в switch. И — как только сходство найдено — мы переключаемся на нужную ветку. Интересно, что если ветка не находится — срабатывает ветка default. И да — break нужен для того, что бы программа работала дальше, после того, как выполнит нужное действие в ветке.
<?php $random_switch = mt_rand(0, 3); switch ($random_switch) { case 0: echo "The value is 0"; break; case 1: echo "The value is 1"; break; case 2: echo "The value is 2"; break; default: echo "The value isn’t 0, 1 or 2"; break; } ?>
Пока хватит 🙂 Спасибо за внимание! До связи.