Porady dotyczące pisania kodu pętli w PHP

W miarę nauki języka złożoność twoich programów rośnie. Nadszedł czas, aby porozmawiać o tym, jak poprawnie pisać kod tak, aby robił to, co zamierzałeś. Dam ci dobrą metodologię.

Załóżmy, że przed tobą stoi zadanie o dostatecznej złożoności, do realizacji którego potrzeba napisać pewną ilość linii kodu.

Błędnym podejściem będzie próba napisania całego kodu rozwiązania naraz, a następnie rozpoczęcie jego testowania. W tym przypadku istnieje wysokie prawdopodobieństwo, że nic nie zadziała, a błąd będzie trzeba szukać w dużej ilości kodu.

Prawidłowym podejściem jest podzielenie zadania na małe, elementarne kroki, które będziesz realizować i od razu sprawdzać ich poprawność. W tym przypadku, nawet jeśli gdzieś popełnisz błąd, od razu zauważysz problem i go naprawisz.

Spróbujmy w praktyce. Załóżmy dla przykładu, że dana jest tablica z liczbami:

php<?php
  $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
?>

Załóżmy, że przed tobą stoi zadanie pobrania z tej tablicy tych elementów, które dzielą się przez 3 i znalezienia ich sumy.

Pierwszym małym krokiem, który bym zaproponował, było po prostu przeiterowanie elementów tablicy pętlą i wyświetlenie ich na ekranie. Zróbmy to i upewnijmy się, że wszystko działa:

php<?php
  foreach ($arr as $elem) {
    echo $elem;
  }
?>

Oddzielmy teraz te elementy, które dzielą się przez 3. Wyświetlmy je i upewnijmy się, że otrzymujemy prawidłowe elementy:

php<?php
  foreach ($arr as $elem) {
    if ($elem % 3 === 0) {
      echo $elem; // wyświetli 3, 6, 9
    }
  }
?>

Teraz kolejnym krokiem możemy znaleźć sumę szukanych elementów:

php<?php
  $sum = 0;
  
  foreach ($arr as $elem) {
    if ($elem % 3 === 0) {
      $sum += $elem;
    }
  }
  
  var_dump($sum);
?>
Задание 1

Dana jest tablica:

php<?php
  $arr = [10, 20, 30, 40, 21, 32, 51];
?>

Weź z tej tablicy te elementy, których pierwsza cyfra to 1 lub 2, i znajdź ich sumę.