Особенностью сегодняшнего урока будет тот факт, что оператор foreach применяется только с массивами и объектами — собственно говоря для переборки массивов этот оператор и используется.
Другой особенностью данного оператора является необходимость использования временной переменной для значения, которое получается с помощью этого оператора из массива. Звучит несколько запутанно, но мы сейчас с вами попробуем во всем этом разобраться 😉
Итак, для начала рассмотрим код, предлагаемый Codecademy:
<html>
<head>
<title></title>
</head>
<body>
<p>
<?php
$sentence = array(«I’m «, «learning «, «PHP!»);
___ ($sentence as $word) ___
echo $word;
___
?>
</p>
</body>
</html>
Задание, идущее к этому уроку, требует закончить код до правильной его работы, используя образец следующего вида:
<code class="php"><span class="preprocessor"><?php</span> <span class="variable">$numbers</span> = <span class="keyword">array</span>(<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>); <span class="keyword">foreach</span>(<span class="variable">$numbers</span> <span class="keyword">as</span> <span class="variable">$item</span>) { <span class="keyword">echo</span> <span class="variable">$item</span>; } <span class="preprocessor">?> </span></code>За все время изучения PHP мы с вами немного запомнили основные команды и операторы, потому рассматривать код в данном случае особо не будем - и так понятно, что у нас имеется массив, состоящий из слов: "I'm ", "learning ", "PHP!". Перейдем лучше к foreach: его использование начинается с объявления PHP суровой необходимости работы с массивами: foreach ($sentence as $word), что в переводе на простой человеческий может звучать как: начинаем перебирать массив, и каждое значение из массива объявляем временной переменной. После чего мы просто выводим полученное значение: echo $word; Код, представленный Codecademy, в окончательной форме будет иметь следующий вид: <html> <head> <title></title> </head> <body> <p> <?php $sentence = array("I'm ", "learning ", "PHP!"); foreach ($sentence as $word) { echo $word; } ?> </p> </body> </html> Для большего развлечения я предлагаю создать код, который сгенерирует ряд случайных чисел, сформирует их них массив, который мы выведем на экран отдельными позициями. Надеюсь, что идея сработает - ведь я тоже только начинаю изучение PHP :) Начнем с генерации случайных числе - напомню, что эта операция происходит с помощью команды $a = mt_rand (1,5);, где (1;5) - верхние и нижние ограничения генерируемого числа. Итак, ниже представлен код, который работает по следующей схеме: 1. Генерируем переменную $a 2. Генерируем переменную $b 3. Формируем массив, который состоит из переменных $a и $b, а так же их суммы 4. С помощью оператора foreach выводим на экран значения ячеек 5. Радуемся
<!DOCTYPE html> <html> <head> </head> <body> <p> <?php $a = mt_rand (1,10); //генерируем значение переменной а $b = mt_rand (11,15); // генерируем значение переменной в $test = array($a, $b, $a+$b); // создаем и заполняем массив foreach ($test as $number) { // перебираем массив, и выводим его значения echo $number."<br>"; //выводим значения поочередно, каждое - на новой строке (за это отвечает br) } ?> </p> </body> </html>
Support the Blog!
Running a blog takes a lot of effort, time, and passion. Your donations help improve the content, inspire new ideas, and keep the project going.
If you’ve enjoyed the blog’s materials, any support would mean the world to me. Thank you for being here! ❤️