Po przygotowaniu środowiska, czas na stworzenie naszego pierwszego projektu. Zaczniemy prosto: stworzymy kalkulator w PHP, który będziemy uruchamiać przez linię komend. Będzie też krótkie wprowadzenie do podstaw programowania.

Tworzymy projekt

Zaczniemy od stworzenia projektu, czyli stworzeniu nowego folderu dla naszego kodu. Możemy zrobić to dowolnym sposobem. Ja wybrałem tworzenie projektu z poziomu PhpStorma:



Następnie tworzymy nowy plik, który będzie zawierać kod naszego programu. Ja go nazwałem run.php.



Jak widzicie, początek pliku zaczyna się od <?php. W ten sposób informujemy interpreter, że od tego miejsca należy wykonywać kod języka PHP. Wszystko znajdujące się przed <?php nie będzie traktowane jako kod.
Jako ciekawostkę dodam, że można też zamknąć sekcje kodu PHP przez tag ?>. W bardzo starych stronach mieszało się kod HTML z kodem PHP, więc często stosowano tagi otwarcia jak i zamknięcia. Działało to tak, jak opisuje to poniższy przykład ze Stack Overflow:



Mówię, że jest to ciekawostka, gdyż obecnie nie jest to dobra praktyka. Dlatego gdy tworzymy plik PHP, zawsze zaczynamy go <?php i już nigdy nie dodajemy tagu zamknięcia.

Wracając do naszego projektu. Możemy teraz uruchomić nasz kod w terminalu, wpisując php run.php:



Nie jest chyba żadnym zaskoczeniem, że nasz plik bez kodu nic nie robi 😄
Zaczniemy więc do dodania do naszego kodu echo 1+2;:



Operacja „echo” spowodowała wyświetlenie wyniku operacji „1+2”. Zróbmy małą aktualizacje i pozwólmy wprowadzać własne składniki (przypomnienie z podstawówki: składnik + składnik = suma). Użyjemy do tego funkcji readline().



Na tym etapie mamy działający program, który dodaje dwie liczby do siebie. Rozbierzmy ten kod na czynniki pierwsze:
1. Pierwsza linia to otwarcie tagu PHP – nieodłączny element każdego pliku *.php
2. Trzecia linia to utworzenie zmiennej $element1, która przyjmuje wartość funkcji readline().
3. Funkcja readline zwraca nam tekst podany przez użytkownika. Zwraca go prosto do zmiennej $element1. Zmienna pozwala przechować dane w pamięci i wykorzystać je w późniejszej części kodu.
4. Wewnątrz readline (czyli w nawiasie) znajduje się fragment tekstu, który chcemy wyświetlić użytkownikowi podczas pytania go o wartość, czyli w naszym przypadku „Podaj skladnik 1”. Ważne jest to, że treść musi być ujęta w apostrofach lub cudzysłowach. Jest to wtedy traktowane przez język jako typ danych „string” czyli reprezentujący ciąg znaków.
5. Linia 4 robi to co 3, jednak zapisuje input użytkownika do innej zmiennej, o nazwie $element2.
6. Linia 6 to wyświetlenie sumy zmiennych $element1 i $element2.
7. Linia 7 jest opcjonalna, dodałem ją dla celów estetycznych. Dodaje ona po prostu nową linię do outputu (to samo co wciśnięcie Entera podczas edycji dokumentu w Wordzie).

Co jeżeli chcemy odejmować?

Chcielibyśmy dodać do naszego kalkulatora możliwość odejmowania. Można to zrobić bardzo prosto, po prostu zamieniając + na – w naszym kodzie:



Sprytny czytelnik zauważy, że przecież to nie jest rozwiązanie! Co z tego, że kod robi co powinien, skoro usunęliśmy z niego możliwość dodawania! To co powinniśmy zrobić, to dać użytkownikowi możliwość wybrania czy chce dodać czy odjąć elementy. Pomoże nam tutaj tzw. instrukcja warunkowa. Można ją zastosować w taki sposób:



Dodaliśmy tutaj nową zmienną $operationType, która zawiera odpowiedź, czy użytkownik wybrał dodawanie czy odejmowanie. Zmienna ta będzie zawierała więc albo „+” albo „-„.

W kolejnej linii jest nasza instrukcja warunkowa, czyli
if ($operationType === '+')
Tłumacząc z programistycznego na polski, oznacza to „jeżeli zmienna $operationType jest równa „+”, to wykonaj kod (z klamry bezpośrednio po IFie)”.

Parę linii niżej jest też druga część instrukcji warunkowej
elseif ($operationType === '-')
Oznaczająca „w przeciwnym wypadku (czyli jeśli $operationType nie jest „+”), jeżeli zmienna $operationType jest równa „-„, to wykonaj kod”.

Mała dygresja: Jeśli programowaliście w innym języku, to możecie zauważyć, że użyłem tutaj === zamiast ==. Jest to niekonsekwencja PHP (w stosunku do innych języków), gdzie == zachowuje się ciut inaczej, bo potrafi rzutować na inny typ danych. Czyli np. pozwala na porównanie integer i string. Dlatego w PHP w większości przypadków używa się trzech znaków „równa się”, gdy chcemy sprawdzić czy wartości są równe.

Wracając do naszego kodu. Możemy zauważyć, że spora część kodu się powtarza. Zduplikowany kod zawsze wpływa na czytelność, dlatego uprościłbym nasz kalkulator tak:



Dużo czytelniej, prawda? 😉

Podsumowanie

Zrobiliśmy wspólnie nasz pierwszy prosty program, który pokazał jak można operować językiem PHP. Dodatkowo wspomniałem też troszkę o podstawach programowania.

Jeśli nie czujecie, że wszystko zrozumieliście do końca, to zachęcam do zrobienia dodatkowych zadanek:
1. Dodaj możliwość mnożenia i dzielenia. Możesz do tego celu spróbować użyć switch zamiast „if”.
2. W przypadku dzielenia, sprawdź czy drugi element jest równy 0. W myśl rymowanki „pamiętaj cholero nie dziel przez zero!”, nie pozwól na taką operację.

I pamiętajcie żeby nie bać się używać Google (czyli nie ograniczajcie się tylko do materiału z tego bloga)! Każda droga do osiągnięcia celu jest dobra. Oczywiście pod warunkiem, że rozumiemy co robimy 😄

Related Posts