Składnia PHP — podstawy krok po kroku

Składnia PHP jest nieskomplikowana i przejrzysta. Wystarczy odrobina cierpliwości, aby się do niej przyzwyczaić i zacząć się nią sprawnie posługiwać.

Jeśli więc początkowo wydaje ci się, że kod wygląda jak „chińszczyzna”, to nie przejmuj się, z czasem okiełznasz tego „chińskiego smoka” i przywykniesz do niego, jak do zwykłego tekstu w książkach.

Zwłaszcza podstawowa składnia PHP nikomu nie powinna sprawić problemów. Zresztą w tym rozdziale kursu zadbam o to, aby cię o tym przekonać. Pokażę Ci jak tworzyć komentarze PHP, jak używać konstrukcji echo PHP, jak wywoływać funkcje PHP, a także odpowiem na wszystkie pytania, które mogą ci się nasuwać na temat struktury kodu, który był do tej pory pokazywany (w tym te, które postawiłem w poprzednim rozdziale).

Krótko mówiąc, po przestudiowaniu tego rozdziału, twój zasób wiedzy wzbogaci się o następujące zagadnienia:

  • Wysyłanie danych na wyjście za pomocą konstrukcji echo i print
  • Wywoływanie standardowych funkcji PHP
  • Składnia instrukcji oraz różnica między funkcją, instrukcją a wyrażeniem
  • Komentarze PHP
  • Pozostałe ogólne zasady pisania kodu w zgodzie z przyjętymi w PHP standardami

Wysyłanie danych na wyjście — echo i print

W każdym skrypcie PHP, choćby najdłuższym i najbardziej skomplikowanym, ostatecznie wszystko sprowadza się do jednego: aby zwrócić wynik, który zostanie zaprezentowany na stronie internetowej.

Wynik ten często ma postać kodu HTML albo treści tekstowej, która ma zostać wstawiona do elementów HTML lub do atrybutów elementów HTML. To znaczy, że w języku PHP bardzo ważne są konstrukcje służące do wysyłania danych na wyjście.

Pisząc wysyłanie danych na wyjście, mam na myśli wysyłanie ich na stronę internetową. W PHP dostępne są dwie konstrukcje językowe, które służą do tego celu: echo i print. Używa się ich bardzo podobnie, ale istnieją między nimi pewne subtelne różnice. Przyjrzymy się im dokładniej.

Konstrukcja językowa echo PHP

Konstrukcja echo PHP jest najczęściej używanym narzędziem do wysyłania danych na wyjście w tym języku. Jako argument przyjmuje ona jedno lub więcej wyrażeń. Aby na przykład wyświetlić na stronie internetowej fragment tekstu, wystarczy wpisać go w cudzysłowie po instrukcji echo, np.:


  <?php
  echo "Witaj, świecie";

Aby wyświetlić kilka fragmentów tekstu, można je podać w osobnych cudzysłowach, rozdzielonych przecinkami, np.:


  <?php
  echo "Witaj, świecie,", " jest mi", " tu", " niezmiernie miło";

Zwróć uwagę na spacje przed słowami w drugim, trzecim i czwartym cudzysłowie. Są one potrzebne, ponieważ wszystko co znajduje się między cudzysłowami jest ignorowane. Bez nich więc wszystkie fragmenty tekstu zostałyby wydrukowane na stronie jednym ciągiem. Wypróbuj to!

Warto też wiedzieć, bardziej jako ciekawostkę niż coś do praktycznego wykorzystania, że konstrukcji echo można używać także z nawiasem, np.:


  <?php
  echo ("Witaj, świecie");

Taki sposób użycia jest możliwy tylko wtedy, gdy przekazujemy tylko jeden argument. Ponieważ jednak identyczny efekt można uzyskać bez nawiasu, nie ma sensu go stosować tylko po to, aby zwiększyć sobie liczbę znaków do napisania.

Za pomocą konstrukcji echo można wysyłać na stronę dowolny tekst, który następnie jest interpretowany przez przeglądarkę internetową. To znaczy, że między cudzysłowami można umieścić także dowolny kod HTML, np.:


  <?php
  echo "<p>Witaj, świecie,<br>", " jest mi tu niezmiernie miło.</p>";

Teraz na stronie pojawi się akapit w postaci elementu HTML p zawierający tekst ze złamaniem wiersza za pomocą elementu br. Wypróbuj to!

Oczywiście konstrukcja echo nie służy tylko do wyświetlania fragmentów tekstu. Za jej pomocą można prezentować na stronie różne inne rodzaje danych. Na przykład można zwrócić wynik obliczeń arytmetycznych:


  <?php
  echo 1 + 2;

Ta instrukcja echo spowoduje wyświetlenie na stronie wyniku działania arytmetycznego 1 + 2, czyli liczbę 3.

W poprzednim zdaniu napisałem instrukcja echo, we wcześniejszym napisałem konstrukcja echo, a na początku tej sekcji stwierdziłem, że konstrukcja echo jako argument przyjmuje jedno lub więcej wyrażeń. Jeśli zaczynasz się gubić w gąszczu tych nazw, to już spieszę z wyjaśnieniami.

Wyrażenia, konstrukcje i instrukcje PHP

cegły składnia php, komentarze php, instrukcje php

Do podstawowych i najprostszych składników budulcowych skryptów PHP należą wyrażenia, instrukcje i konstrukcje językowe. Można je sobie wyobrazić jako cegiełki, z których powstaje coraz to większa budowla.

Konstrukcje językowe PHP (ang. language construct) są wbudowane bezpośrednio w język PHP i są wykonywane bezpośrednio przez parser. Są to słowa kluczowe, które stanowią podstawowy zestaw narzędzi do programowania.

Wiesz już o istnieniu dwóch konstrukcji językowych: echo i print, ale jest ich o wiele więcej. Zaliczają się do nich także między innymi instrukcje warunkowe i pętle.

W odniesieniu do konstrukcji językowych PHP należy uważać na jedną rzecz: niektóre z nich mogą podszywać się pod funkcje.

Dla przykładu, konstrukcja językowa isset(), służąca do sprawdzania, czy istnieje zmienna o określonej nazwie, wygląda jak funkcja, ponieważ przyjmuje argument w nawiasie.

To samo dotyczy konstrukcji echo i print — zazwyczaj są używane bez nawiasów, ale można je używać także w składni z nawiasem.

Krótko mówiąc, konstrukcje językowe PHP to najprostsze i najbardziej podstawowe elementy języka PHP. Można ich używać w wyrażeniach i instrukcjach.

Wyrażeniem PHP (ang. PHP expression) jest wszystko, co ma jakąś wartość, a więc każdy fragment kodu, z którego dałoby się coś otrzymać. W związku z tym wszystkie poniższe przykłady są prawidłowymi wyrażeniami PHP:


  "Witaj, świecie";
  "<p>Witaj, świecie,<br>", " jest mi tu niezmiernie miło.</p>"
  1 + 2

Aby z wyrażeń był jakiś pożytek, trzeba ich użyć w instrukcjach.

Instrukcje PHP to fragmenty kodu wykonujące jakąś konkretną czynność i zazwyczaj zakończone średnikiem. Każdy skrypt PHP składa się z pewnej liczby instrukcji. Na przykład wszystkie poniższe przykłady to prawidłowe instrukcje PHP:


  echo "Witaj, świecie";
  print("Dzień dobry");
  echo 127 * 14;

Teraz możemy przejść do omówienia konstrukcji językowej print PHP.

Konstrukcja językowa print PHP

Konstrukcja językowa print ma identyczne zastosowanie, jak konstrukcja echo, ale różni się od niej dwoma ważnymi szczegółami.

Po pierwsze print przyjmuje tylko jeden argument w cudzysłowie, np.:


  <?php
  print "Witaj, świecie!";

Dla oka wynik tej instrukcji będzie dokładnie taki sam, jak wynik instrukcji echo, czyli na stronie pojawi się napis Witaj, świecie!.

Dodatkowo jednak konstrukcja print zawsze zwraca wartość 1, której można użyć np. w instrukcjach warunkowych PHP, które jeszcze poznasz w dalszej części kursu.

Zwracanie wartości przez print sprawia, że konstrukcji tej można używać w kontekście wyrażeń PHP. Przypomnę, że wyrażeniem jest wszystko, co ma wartość, a konstrukcja print zawsze zwraca 1, a więc ma wartość.

Dla porównania, konstrukcji językowej echo nie można używać jako wyrażenia, ponieważ nie zwraca ona żadnej wartości.

Skoro już umiesz dodać dowolny tekst na stronę, a nawet wykonać proste obliczenia arytmetyczne i wyświetlić ich wynik na stronie, czas wejść się na kolejny poziom wtajemniczenia w język PHP. Przechodzimy do wywoływania funkcji.

Funkcje standardowe PHP

Na funkcje w języku programowania można patrzeć z dwóch stron. Po pierwsze każdy język programowania zawiera podstawową bibliotekę funkcji standardowych, które są dostępne dla programisty od samego początku, czyli w przypadku PHP od chwili zainstalowania interpretera. Są to funkcje wbudowane PHP (ang. built-in function).

Po drugie każdy programista może definiować własne funkcje, które realizują określone, często wykonywane, zadanie, dzięki czemu nie trzeba w wielu miejscach wpisywać tego samego kodu — wystarczy wywołać zdefiniowaną wcześniej funkcję. Są to funkcje zdefiniowane przez użytkownika (ang. user-defined function).

Dodatkowo można jeszcze wyróżnić funkcje pochodzące z rozszerzeń PHP, które w pewnym sensie są połączeniem dwóch poprzednich kategorii. Z jednej strony dzięki obecności w rozszerzeniu są praktycznie wbudowane, z drugiej jednak nie należą do podstawowego rdzenia PHP, więc są zdefiniowane przez użytkownika.

Jednak niezależnie od pochodzenia, wszystkie funkcje wywołuje się tak samo. W tej sekcji dowiesz się, jak używać funkcji wbudowanych języka PHP. Poznasz parę przydatnych funkcji z biblioteki standardowej PHP oraz nauczysz się je wywoływać, aby uzyskać określony rezultat na stronie.

Natomiast w jednym z dalszych rozdziałów pokażę Ci także, jak definiować własne funkcje oraz dokładnie wyjaśnię, dlaczego warto to robić.

Wywoływanie funkcji PHP

komentarze php echo php wywoływanie funkcji php

Ogólna zasada wywoływania wszystkich funkcji w PHP jest bardzo prosta i można ją sprowadzić do postaci poniższego pseudokodu PHP:

nazwa_funkcji(argumenty);

Aby więc wywołać funkcję PHP, należy wpisać jej nazwę, a następnie w nawiasie za tą nazwą należy podać argumenty, jakie dana funkcja przyjmuje.

Każda funkcja może przyjmować inne argumenty, więc przed jej użyciem zawsze należy sprawdzić ją w dokumentacji PHP (jeśli chodzi o funkcje wbudowane) lub w innym źródle (jeśli chodzi o funkcje zdefiniowane przez użytkownika i z rozszerzeń).

Na przykład w bibliotece standardowej języka PHP znajduje się funkcja o nazwie strlen(), która zwraca długość łańcucha znaków. W dokumentacji na jej temat (https://www.php.net/manual/en/function.strlen.php) znajdziemy następującą informację:

strlen(string $string): int

Znaczenie poszczególnych elementów tego formalnego opisu jest następujące:

  1. strlen — nazwa funkcji
  2. string $string — informacja, że funkcja przyjmuje jeden argument typu string o nazwie $string. Typ string to po prostu typ reprezentujący dane tekstowe. Krótko mówiąc, ta funkcja jako argument przyjmuje tekst.
  3. : int — ten człon określa typ wartości zwrotnej. W tym przypadku jest to int, czyli liczba całkowita.

Podsumowując, funkcja PHP strlen() przyjmuje łańcuch znaków i zwraca jego długość. Wywołajmy ją więc z jakimś łańcuchem znaków i zobaczmy, co się stanie:


  <?php
  strlen("Ty, sułtanie, diable turecki, przeklętego diabła bracie i towarzyszu, samego Lucyfera sekretarzu.");

Wpisz ten kod do swojego testowego dokumentu index.php w Visual Studio Code i otwórz stronę w przeglądarce.

Co widzisz? Pewnie spodziewałeś się jakiejś liczby… A tu, nic z tego! Nie ma się co dziwić, bo my tę funkcję tylko wywołaliśmy. Wykonała więc ona swoje zadanie, zwróciła wartość i tyle. W żaden sposób się tą wartością nie zainteresowaliśmy, nie odebraliśmy jej, ani jej nie wyświetliliśmy, więc zwyczajnie przepadła.

Zapamiętaj: jeśli chcesz mieć jakikolwiek pożytek z funkcji, musisz coś zrobić z jej wartością zwrotną. Zwróć uwagę, że fragment strlen("…") jest wyrażeniem, a ty już umiesz wyświetlać wartości wyrażeń.

W takim razie do dzieła. Dodaj echo przed instrukcją wywołania funkcji strlen():


  <?php
  // Jeszcze czymś cię tu zaskoczę…
  echo strlen("Ty, sułtanie, diable turecki, przeklętego diabła bracie i towarzyszu, samego Lucyfera sekretarzu.")

Jeśli po wprowadzeniu tej zmiany na Twoim ekranie pojawiła się liczba 100, to jesteś w domu. Właśnie z powodzeniem wywołałeś funkcję PHP i wysłałeś jej wynik na wyjście, czyli do przeglądarki internetowej.

A teraz zwróć uwagę na groźnie wyglądający komentarz: // Jeszcze czymś cię tu zaskoczę, znajdujący się w wierszu poprzedzającym wywołanie funkcji strlen().

Funkcja ta rzeczywiście zwraca długość łańcucha znaków, ale w bajtach. A liczba znaków w łańcuchu może, ale nie musi, być równa liczbie bajtów zajmowanych przez ten łańcuch.

W uproszczeniu można powiedzieć, że wszystkie litery alfabetu angielskiego, a także znaki interpunkcyjne i spacje, zajmują po jednym bajcie, natomiast litery występujące tylko w języku polskim, takie jak na przykład ł i ę, zajmują po dwa bajty.

Dlatego funkcja strlen() w powyższym przykładzie zwróciła wartość 100, mimo że przekazany jej łańcuch zawiera 97 znaków, licząc ze spacjami i przecinkami. Jeśli czujesz głód bardziej szczegółowej wiedzy na ten temat, to wykaż odrobinę cierpliwości. Wrócimy do tego w rozdziale poświęconym pracy z łańcuchami znaków w PHP.

A teraz na chwilę wróć wzrokiem do komentarza // Jeszcze czymś cię tu zaskoczę w powyższym kodzie. Pewnie już się domyślasz, że skoro nie przeszkodził on w wykonaniu skryptu, to najwyraźniej musiał zostać zignorowany przez interpreter. Jeśli tak, to masz absolutną rację! W nagrodę opowiem Ci dokładniej, jak stosuje się komentarze w PHP.

Komentarze PHP

Komentarze PHP to fragmenty tekstu oznaczone w specjalny sposób, aby zasygnalizować interpreterowi PHP, że ma je ignorować.

Wbrew temu, co zrobiłem we wcześniejszym przykładzie, normalnie komentarzy nie używa się do tego, aby straszyć czytelników kodu. Komentarze PHP służą do objaśniania fragmentów kodu i dodawania różnych istotnych informacji, które mogą być potrzebne osobie analizującej nasz kod.

Komentarze w PHP mogą być jednowierszowe i wielowierszowe. Przyjrzymy się ich składni.

Jednowierszowe komentarze PHP

W PHP dostępne są dwa rodzaje komentarzy jednowierszowych. Jeden zapożyczono z powłoki Uniksa i ma on następującą postać:


  <?php
  # Sprawdzamy długość łańcucha znaków
  echo strlen("Lorem ipsum");

Komentarze w stylu powłoki uniksowej oznacza się znakiem #. Wszystko, co znajduje się po jego prawej stronie, włącznie z nim, jest ignorowane przez interpreter.

Drugi rodzaj komentarza został zapożyczony z języka C++ i jest oznaczany dwoma ukośnikami — //, np.:


  <?php
  // Sprawdzamy długość łańcucha znaków
  echo strlen("Lorem ipsum");

Tak, jak w poprzednim przypadku, wszystko, co znajduje się po prawej stronie dwóch ukośników, jest ignorowane przez interpreter.

Komentarze PHP można wstawiać zarówno w osobnych wierszach, jak i na końcu wierszy kodu, jak w tym przykładzie:


  <?php
  echo strlen("Lorem ipsum"); // Sprawdzamy długość łańcucha znaków

Oczywiście komentarz PHP można umieścić także w skryptach wbudowanych w elementy HTML, np:


  <h1><?php echo "Tytuł"; // To jest tytuł strony ?></h1>

Który rodzaj komentarza PHP wybrać? Pod względem technicznym nie ma znaczenia, który rodzaj komentarza wybierzesz. Wersja w stylu powłoki może być preferowana przez osoby znające na przykład język Perl, w którym też one występują.

Z kolei komentarze w stylu C++ występują także w JavaScripcie, Javie, C# i wielu innych językach. Mówiąc krótko, nie ma znaczenia, co wybierzesz, ale wśród programistów PHP zdecydowanie popularniejsza jest wersja w stylu języka C++ (//).

Wielowierszowe komentarze PHP

Wielowierszowy komentarz PHP to dłuższy fragment tekstu umieszczony między znakami /* i */. Tego rodzaju komentarzy używa się do wstawiania do kodu obszerniejszych opisów lub uwag, np.:


  <?php
  /* To jest nasz testowy program.
  *  Sprawdzamy w nim długość łańcucha znaków.
  */
  echo strlen("Lorem ipsum");

Jako że komentarze wielowierszowe mają ściśle określony początek i koniec, mogą występować nawet wewnątrz prawdziwego kodu, np.:


  <?php
  
  /* To jest tylko testowy program.
  *  Demonstruje, że komentarze wielowierszowe PHP można
  *  wstawiać w najgłupszych nawet miejscach.
  *  Jeśli ten widok wypalił ci oczy, to przepraszam ;)
  */
  echo strlen /* Nigdy */ ("Lorem ipsum" /* tak */ ) /* nie rób */ ;

To, że coś jest możliwe, nie znaczy, że należy z tego korzystać. Nigdy nie używaj komentarzy w sposób pokazany powyżej. Tylko utrudniają czytanie i rozumienie kodu oraz mogą prowadzić do pomyłek.

Być może zastanawiasz się, czemu służą te gwiazdki na początku każdego wiersza komentarza. One pełnią tylko funkcję ozdobną i nie ma obowiązku ich stosować, na przykład równie dobrze można napisać tak:


  /* To jest tylko testowy program.
  Demonstruje, że komentarze wielowierszowe PHP można
  wstawiać w najgłupszych nawet miejscach.
  Jeśli ten widok wypalił ci oczy, to przepraszam ;)
  */

Wyjątkiem jest tylko sytuacja, gdy w znaczniku początku komentarza znajdują się dwie gwiazdki:


  /** To jest tylko testowy program.
  …
  */

Dla interpretera PHP to nie ma znaczenia — i tak zignoruje wszystko do ciągu znaków */. Ale tak oznaczonych komentarzy używa narzędzie o nazwie phpDocumentor, które automatycznie tworzy z nich dokumentację programu.

Skoro wiesz już, jak dodawać komentarze PHP, a nawet wiesz, jak ich nie dodawać, umiesz wywoływać funkcje oraz rozumiesz różnicę między konstrukcją językową, wyrażeniem i instrukcją, to spora na uporządkowanie pewnych bardziej ogólnych spraw.

Czy zastanawia Cię, czemu napisałem tak:


  <?php
  // Sprawdzamy długość łańcucha znaków
  echo strlen("Lorem ipsum");

A nie napisałem tak:


  <?php echo strlen("Lorem ipsum"); // Sprawdzamy długość łańcucha znaków

Albo czy ciekawi cię, dlaczego napisałem tak:


  <h1><?php echo "Tytuł"; // To jest tytuł strony ?></h1>

A nie napisałem na przykład tak:


  <h1>
  <?php
  
  echo "Tytuł"; // To jest tytuł strony
  
  ?>
  </h1>

Jeśli nurtują Cię takie pytania, to ulgę sprawi ci lektura następnej sekcji.

Konwencje zapisu kodu PHP

Języki programowania w zdecydowanej większości, do której należy też PHP, dają dużą swobodę w zakresie formatowania kodu źródłowego.

Teoretycznie nic nie stoi na przeszkodzie, abyśmy na przykład nazwę funkcji oddzielili od nawiasu z jej argumentami spacją, pięcioma spacjami, a nawet tabulatorami, np.:


  // Oba poniższe przykłady są prawidłowe i równoważne pod względem składniowym
  echo strlen("Lorem ipsum");
  echo strlen             ("Lorem ipsum")     ;

Jeśli jednak chcesz, aby Twój kod wyglądał profesjonalnie i był czytelny dla innych programistów (a także dla ciebie po pewnym czasie), to musisz trzymać się pewnych reguł, które zwiększają czytelność kodu oraz są akceptowane i przestrzegane przez całą społeczność. Chcesz poznać te reguły? Zacznij od zapoznania się ze standardami FIG — PHP PSR-1 i PHP PSR-12.

Standardy FIG PHP PSR-1 i PHP PSR-12

Składnia języka to jedno, a sposób korzystania z jej możliwości to drugie. Do tej pory do tematu podchodziłem od tej pierwszej strony. Teraz spojrzymy na programowanie z drugiej strony, czyli jak pisać skrypty PHP zgodne z przyjętymi w środowisku konwencjami.

Jeśli rozejrzysz się po internecie i przeczytasz parę książek o różnych językach programowania, to znajdziesz w nich różne zalecenia na temat tego, gdzie powinno się umieszczać klamry w instrukcjach warunkowych, czy w nawiasach wywołań funkcji dodawać na początku i końcu spacje czy nie itd.

W języku PHP również poprawny kod można pisać na wiele sposobów, co pokazałem już powyżej. Jednak praca jest najprzyjemniejsza i najefektywniejsza, kiedy wykonuje się ją w standardowych i przewidywalnych warunkach.

Niektórzy są aa przykład przyzwyczajeni do zapisu wywołań funkcji bez spacji w nawiasach:


  echo strlen("Lorem ipsum");

Inni z kolei wolą dodać spacje:


  echo strlen( "Lorem ipsum" );

Albo jeden preferuje pisać tak:


  <?php echo strlen("Lorem ipsum");

A ktoś inny woli tak:


  <?php
  echo strlen("Lorem ipsum");

Aby pozbyć się takich niejasności, kilkanaście lat temu grupa twórców najpopularniejszych frameworków PHP zawiązała organizację o nazwie Framework Interoperability Group (FIG). Jej celem jest opracowywanie standardowych zaleceń czy rekomendacji na temat tego, jak formatować kod PHP.

Te zalecenia nie stanowią integralnej części języka PHP, tylko są formułowane przez niezależną organizację. Stosowanie się do nich nie jest więc obowiązkowe, ale warto ich przestrzegać w jak największym stopniu, ponieważ są po prostu logiczne i większość z nich wyraża powszechnie przyjęte w branży konwencje.

PHP PSR-1 i PHP PSR-12 to nie jedyne standardy organizacji PHP FIG. Jest ich o wiele więcej, ale na razie nas interesują tylko te dwa wymienione. Jeśli chcesz poznać wszystkie, to ich listę znajdziesz na stronie PHP Standards Recommendations.

Najpierw spójrz na przykładowy kod skryptu. Zawiera on parę jeszcze nie omawianych konstrukcji, ale to nie szkodzi. Na jego podstawie chcę ci tylko pokazać kilka podstawowych zasad formatowania kodu, których możesz się trzymać (polecam zapisać sobie tę stronę na półce, żeby móc do niej wygodnie często wracać).


  <?php
  
  function sumaLiczb (int $a, int $b) {
    echo $a + $b;
  }
  
  sumaLiczb(2, 4);

Jest to przykładowa definicja prostej, wręcz prostackiej (bo na przykład nie sprawdza, czy jako argumenty naprawdę przekazano jej liczby), funkcji PHP i jej wywołania. Przyjmuje ona dwa argumenty, które powinny być liczbami całkowitymi, i zwraca ich sumę. Teraz przeanalizujemy krok po kroku formatowanie tego kodu.

  1. <?php — jeśli plik zawiera tylko skrypt PHP, to w pierwszym wierszu powinien znajdować się tylko otwierający znacznik <?php. Oczywiście, jeśli kod PHP jest zmieszany z HTML, sytuacja wygląda zupełnie inaczej.

    Uwaga na marginesie: standard PHP PSR-1 zaleca, aby używać wyłącznie dwóch typów znaczników PHP: <?php i <?=.

  2. sumaLiczbnazwy funkcji zdefiniowanych przez użytkownika powinny być tworzone w notacji wielbłądziej (ang. camelCase). Pierwszy wraz składający się na nazwę zaczynamy od małej litery, a każdy następny — od wielkiej.
  3. int — to jest nazwa typu parametru funkcji, czyli słowo kluczowe języka, tak jak echo i print, tylko ma inne zastosowanie. Wszystkie słowa kluczowe PHP należy zapisywać w całości małymi literami.

    Uwaga na marginesie: w języku PHP wielkość liter w słowach kluczowych nie jest rozpoznawana, więc teoretycznie można pisać Echo, echO, eChO itd.

  4. (int i $b)po nawiasie otwierającym i przed nawiasem zamykającym listy parametrów lub argumentów nie powinno być spacji.
  5. int $a, int $bparametry funkcji powinny być rozdzielone przecinkami i po każdym przecinku powinna być spacja.
  6. {klamra otwierająca „ciało” funkcji powinna znajdować się w tym samym wierszu, co deklaracja funkcji oraz powinna być oddzielona od znaku zamknięcia nawiasu listy parametrów spacją.
  7.     echo — każdy poziom wcięcia kodu powinien mieć rozmiar 4 spacji (tzn. w tym przykładzie przed echo znajdują się 4 spacje).

To są niektóre podstawowe zasady wybrane ze standardów PHP PSR-1 i PHP PSR-12. Standardy te nie są bardzo długie ani skomplikowane, ale zawierają jeszcze sporo innych zaleceń, które na razie nie są dla nas interesujące. Będę jednak jeszcze się do nich odwoływał w dalszych rozdziałach kursu, gdy trafi się odpowiednia ku temu okazja.

Podsumowanie

Tygrys podsumowania
  1. Rdzeń języka PHP stanowią konstrukcje językowe, które są wbudowane bezpośrednio w język
  2. Do wysyłania danych na wyjście służą konstrukcje językowe PHP echo i print.
  3. Konstrukcja językowa echo nie zwraca żadnej wartości, natomiast konstrukcja print zawsze zwraca 1.
  4. Wyrażenie PHP to każdy fragment kodu, który ma jakąś wartość.
  5. Instrukcja to głównie wiersz kodu PHP zakończony średnikiem, który daje jakiś wynik.
  6. Aby wywołać funkcję PHP, należy napisać jej nazwę i w nawiasie podać argumenty wywołania, jeśli są jakieś potrzebne.
  7. Komentarze w PHP mogą być jednowierszowe i wielowierszowe.
  8. Zalecane jest używanie tylko komentarzy w stylu języka C++ (//) i w stylu języka C (/*… */).
  9. Komentarze PHP są ignorowane przez interpreter PHP i służą między innymi do umieszczania w kodzie objaśnień dotyczących fragmentów, które mogą być trudne do zrozumienia.
  10. Składnia PHP pozwala na swobodne posługiwanie się wcięciami, tabulatorami i złamaniami wiersza w celu sformatowania kodu według gustu programisty.
  11. Tej wolności składniowej lepiej jednak nie nadużywać i lepiej jest przestrzegać ustalonych konwencji oraz standardów.
  12. Do najbardziej znanych standardów formatowania kodu PHP należą standardy FIG — PHP PSR-1 i PHP PSR-12.
  13. Standardowo rozmiar poziomu wcięcia kodu PHP powinien wynosić 4 spacje. Jest to tylko zalecana konwencja, nie obowiązek.
  14. W wywołaniach i definicjach funkcji lista parametrów lub argumentów powinna być umieszczona w nawiasie. Po nawiasie otwierającym i przed nawiasem zamykającym nie powinno być spacji.
  15. Parametry lub argumenty funkcji powinny być rozdzielane przecinkami i po każdym przecinku powinna znajdować się jedna spacja.
  16. Klamra otwierająca definicji funkcji powinna znajdować się w tym samym wierszu, co jej deklaracja. Natomiast klamra zamykająca powinna znajdować się w osobnym wierszu za ostatnim wierszem definicji funkcji.
  17. Nazwy słów kluczowych PHP należy zapisywać małymi literami, mimo że sam język PHP dopuszcza ich dowolny zapis.
  18. Nazwy funkcji zdefiniowanych przez użytkownika powinny być tworzone wg. wzoru notacji wielbłądziej, np. fooBar().


Rozmawiający mężczyźni

Pytania

  1. Co jest rdzeniem języka PHP?
  2. W jaki sposób w PHP można wysłać dane na wyjście?
  3. Co robi echo?
  4. Co robi print?
  5. Czym różni się echo od print?
  6. Czym jest wyrażenie PHP?
  7. Czym jest instrukcja PHP?
  8. Jaki jest ogólny sposób wywoływania funkcji w PHP?
  9. Jakie są komentarze w PHP?
  10. Jakie komentarze PHP są zalecane?
  11. Jakie są zasady stosowania wcięć, spacji, złamań wiersza itp. narzędzi służących do formatowania tekstu kodu PHP?
  12. Jakie znasz standardy formatowania kodu PHP? Czy przestrzeganie ich jest obowiązkowe?
  13. Wymień znane ci zasady pochodzące z wymienionych w poprzednim punkcie standardów kodowania w PHP.


Ćwiczące dzieci

Ćwiczenia

  1. Sprawdź, ile naprawdę znaków ma łańcuch "Ty, sułtanie, diable turecki, przeklętego diabła bracie i towarzyszu, samego Lucyfera sekretarzu." za pomocą funkcji mb_strlen().
  2. Wykonaj obliczenia za pomocą podanych standardowych funkcji PHP:
    1. Trójkąt prostokątny ma przyprostokątne o długości 10 i 15. Oblicz długość przeciwprostokątnej za pomocą funkcji hypot(), która jako argumenty przyjmuje dwie liczby. Wyświetl wynik na stronie.
      Rozwiązanie

      echo hypot(20, 15);

    2. Funkcja PHP pi() nie przyjmuje żadnych argumentów i zwraca wartość liczby π. Oblicz przy jej użyciu pole powierzchni koła o promieniu o długości 10 (wzór na pole powierzchni koła to πr2). Wyświetl wynik na stronie.
      Rozwiązanie

      echo pi() * 10 * 10;

    3. Funkcja sqrt() jako argument przyjmuje liczbę i zwraca jej pierwiastek kwadratowy. Oblicz sumę pierwiastków kwadratowych liczb 17 i 54. Wyświetl wynik na stronie.
      Rozwiązanie

      echo sqrt(17) + sqrt(54);

  3. Utwórz w pliku PHP dokument HTML (np. za pomocą skrótu ! rozszerzenia Emmet) i umieść każde z obliczeń z ćwiczenia 2 w osobnym elemencie div.

Podobał Ci się ten artykuł?

Oceń go!

Średnia 5 / 5. Liczba głosów: 3

Jeszcze nikt nie głosował. Wyprzedź innych i zagłosuj.

Skoro spodobał Ci się ten artykuł...

Poleć go znajomym!

Ojej :( Powiedz nam, co powinniśmy poprawić!

Jajko z dzwonkiem
Podoba Ci się ta strona?

Pomóż nam się rozwijać, wykupując płatne konto. Dzięki temu będziemy mogli tworzyć dla Ciebie jeszcze więcej ciekawych treści, a Ty pozbędziesz się reklam.

Autor: Łukasz Piwko

Dodaj komentarz

3 × pięć =