Pierwszy własny kod: zmienne · typy · komentarze · sklejanie tekstu
Rozgrzewka · 3 minuty
Co już wiecie?
Zanim napiszemy pierwszą linię PHP, wracamy do tego, co już umiecie o stronach.
Do czego służy HTML i kto go czyta, gdy otwierasz stronę?
Co robi serwer, gdy wpisujesz adres strony w przeglądarce?
PHP Manual: What is PHP? („the code is executed on the server, generating HTML which is then sent to the client”) · php.net/manual/en/intro-whatis.php
Cel lekcji
Po tej lekcji umiesz
tworzyć zmienne i rozpoznawać ich typy
pisać komentarze w kodzie
łączyć tekst ze zmiennymi na dwa sposoby
używać podstawowych funkcji do ciągów znaków
Piszemy wszystko razem, na żywo. Po każdym bloku uruchamiacie kod u siebie.
Przepisujemy i uruchamiamy
Zmienne i typy
$name = "Anna"; // string (ciąg znaków)$age = 18; // int (liczba całkowita)$height = 1.72; // float (liczba z przecinkiem)$isAdult = true; // bool (prawda / fałsz)/* Komentarz na kilka linii
piszemy tak. */
Typu nie deklarujemy. PHP sam go rozpoznaje po wartości.
Ciekawostka: znak $ przed nazwą zmiennej PHP wziął od Perla. W 1995 roku Rasmus Lerdorf, twórca PHP, zbudował wczesną wersję języka (wtedy nazywaną FI) ze „zmiennymi w stylu Perla”, jak pisze PHP Manual. Ten zapis ze znakiem $ został w PHP do dziś.
PHP Manual: History of PHP, sekcja o wersji FI z 1995 roku (php.net/manual/en/history.php.php)
Zasady
Nazwy zmiennych: 4 zasady
Zawsze zaczynają się od $
Wielkość liter ma znaczenie: $Name to inna zmienna niż $name
Bez spacji i polskich znaków: $studentName, nie $imię ucznia
Po angielsku: $price, nie $cena. Tak wygląda kod w każdej firmie, w polskiej też
Przyjmujemy na wszystkich lekcjach: nazwy angielskie, pierwsze słowo małą literą, każde kolejne wielką (camelCase): $studentName, $isAdult. Tak piszą Laravel, Symfony i większość firm. Po polsku zostają teksty, które widzi użytkownik.
PHP Manual: Variables basics („A valid variable name starts with a letter... or underscore”; „The variable name is case-sensitive”) · php.net/manual/en/language.variables.basics.php
Łączenie tekstu plusem to JavaScript. W PHP tekst łączy kropka. Kto się pomyli, dostaje 181 zamiast 19 i długo szuka błędu.
PHP Manual: String operators („the concatenation operator ('.'), which returns the concatenation of its right and left arguments”) · php.net/manual/en/language.operators.string.php
Zapamiętajcie
Funkcje do ciągów
strlen("Anna") // 4 (długość w bajtach)strtoupper("Anna") // ANNAstr_replace("A", "O", "Anna") // Onnasubstr("komputer", 0, 3) // kom
str_replace rozróżnia wielkość liter: zamieniło tylko duże „A”.
Do polskiego tekstu używamy funkcji z przedrostkiem mb_ (multibyte): mb_strlen, mb_strtoupper, mb_substr.
PHP Manual: strlen („returns the number of bytes rather than... characters”) · php.net/manual/en/function.strlen.php · PHP Manual: mb_strlen („a multi-byte character is counted as 1”) · php.net/manual/en/function.mb-strlen.php
Ćwiczenie 1 · 6 minut
Ćwiczenie 1: pogoda
W swoim folderze utwórz plik weather.php.
Wpisz trzy zmienne: $city = "Warszawa";$temperature = 21.5;$isRaining = true;
Jednym echo wypisz zdanie, w którym są wszystkie trzy zmienne.
Otwórz plik w przeglądarce: localhost/weather.php
Ma się pojawić:Miasto: Warszawa, temperatura: 21.5 stopni, pada: 1
Pytanie do zapisania w komentarzu w pliku: dlaczego zamiast true widać 1?