Podstawy programowania w PHP

Skrypty PHP najczęściej posiadają rozszerzenie *.php i są tworzone przy pomocy dowolnego edytora tekstów.

Skrypty PHP mogą być zwykłymi plikami, w których zagnieżdżone są instrukcje PHP.

Parser PHP wykonuje kod, który znajduje się pomiędzy instrukcjami .

Oto przykład:

Trzy razy trzy jest <?php echo(3 * 3) ?>


Komentarze są elementem składni obecnym w każdym języku programowania. Komentarze to sposób, aby zawrzeć w kodzie źródłowym własne przemyślenia, pomysły dotyczące kodu, czy też prawa autorskie. Przeważnie są stosowane do opisu kodu, wytycznych, co robi dana linia.

Komentarze są całkowicie ignorowane przez interpreter. Istnieje kilka sposób komentowania kodu.

<?php

echo 'Hello World!'; // przywitanie

# to jest komentarz

/*

a to jest komentarz,

który może się znajdować w wielu liniach

*/

?>


Instrukcje

Programowanie opiera się na stosowaniu instrukcji języka, czytelnych dla parsera.

W większości języków programowania jest tak, że instrukcje muszą być oddzielone od siebie znakiem średnika (;).

Przykład:

<?php

echo 3 * 3;

echo 4 * 3;

echo('Hello World!');

?>


Typy danych

Pomimo tego, że PHP jest bardzo elastyczny, do jednej zmiennej możemy przypisać dowolne dane, to istnieje możliwość ustalenia typu wcześniej. W językach takich jak C, czy Delphi przy deklaracji zmiennej musimy określić jej typ, czy będzie to liczba, czy tekst itd. PHP rozpoznaje następujące typy danych:


Zmienne

Zmienne to kolejny element dostępny praktycznie w każdym języku programowania. Stanowi on swoisty pojemnik na dane. W każdym momencie możemy zadeklarować zmienną, przypisać jej dane, aby później owe dane odczytać.

Zmienne w PHP deklaruje się w bardzo prosty sposób, z użyciem znaku dolara ($). PHP, w przeciwieństwie do innych języków programowania, nie wymaga określania typu zmiennej. Oznacza to, że jedna zmienna może zawierać dane w postaci liczbowej, tekstowej lub logicznej.

Przypisanie danych do zmiennej odbywa się przy pomocy operatora przypisania (=).

Przykład:

<?php

$zmienna1 = 10;

$zmienna2 = 'Tekst';

$zmienna3 = true;

echo $zmienna2;

?>


Operatory

Operatory służą do manipulacji danymi. Dzielą się na kilka kategorii.

•Operatory arytmetyczne ( + -* / )

•Operatory przypisania ( = += .= itd. )

•Operatory porównania ( == <> === != > < <= >= )

•Operatory bitowe ( & | ^ ~ << >> )

•Operatory logiczne ( and or xor ! && || )

•Operatory łańcuchowe ( = .=)

•Operatory inkrementacji i dekrementacji ( ++ --)

•Operatory kontroli błędów ( @ )


Instrukcje warunkowe if, else, elseif

Podstawową instrukcją warunkową jest if, która wykonuje dane działania w zależności, do tego, czy podany warunek zostanie spełniony. Często tworzy się bloki także z wykorzystaniem instrukcji else oraz elseif. Blok instrukcji może posiadać taką konstrukcję:

if (warunek) {instrukcja} elseif(kolejny warunek) {instrukcja} else {instrukcja}

Wraz z instrukcjami warunkowymi, bardzo często wykorzystywane są operatory logiczne oraz porównania:

<?php

$var = true;

if ($var == true)

{

echo 'Zmienna $var posiada wartość true';

}

elseif($var< ‘4’)

{

echo 'Zmienna $var nie posiada wartości true i jej wartość jest mniejsza od liczby 4';

}

else

{

echo 'Zmienna $var nie posiada wartości true, a jej wartość nie jest mniejsza od liczby 4';

}

?>


Instrukcja warunkowa Switch

Instrukcja switch używana jest przeważnie w przypadkach, gdy mamy do czynienia z wyliczeniem wielu możliwych działań w zależności od uzyskanej wartości. Stosuje się ją w przypadkach, które wymagałyby wielu instrukcji if.

Przykładowa instrukcja switch:

<?php

$jezyk = 'pl';

switch ( $jezyk )

{

case 'pl':

$powitanie = 'Witaj!';

break;

case 'en':

$powitanie = 'Welcome!';

break;

case 'de':

$powitanie = 'Willkommen!';

default:

$powitanie = 'Witaj!';

}

echo $powitanie;

?>


Pętla while

Pętla while jest najprostsza pętla oferowana w PHP. Przed wykonaniem sprawdza warunek jej zakończenia i jeżeli zostaje on spełniony –nie wykonuje żadnych instrukcji. Jeżeli warunek nie zostanie spełniony wykonuje instrukcje z ciała pętli do momentu spełnienia warunku. Oto budowa pętli while:

while (warunek)

{

instrukcje;

}

<?php

$i = 0; // deklarujemy zmienną (licznik)

while ( $i <10 ) // wykonuj dopóki zmienna $i jest mniejsza od 10

{

$i++; // zwieksz licznik o 1

}

echo "Pętla została wykonana $i razy.";

?>


Pętla do ... while

Pętla do ... while jest bardzo podobna do pętli while. W zasadzie jedyna różnicą jest fakt, iż warunek zakończenia pętli sprawdzany jest na końcu, a nie na początku, jak to ma miejsce przy pętli while. Oznacza to, że pętla zawsze, zostanie wykonana, co najmniej raz.

Przykład:

<?php

$bool = false;

do

{

echo 'Witaj!';

}

while ($bool);

?>


Pętla for

Pętla for zasadniczo różni się od wspomnianych wcześniej pętli. W pierwszym wierszu pętli znajdują się wszystkie wyrażenia kontrolujące:

for (wyraenie1; wyraenie2; wyraenie3)

{

instrukcje;

}

Przykład:

<?php

for ($i = 1;$i <= 10;$i++)

{

echo"Napis nr $i<br/>";

}

?>


Funkcje

Idea programowania proceduralnego zaczęła się pojawiać wraz z bardziej zaawansowanymi programami. Tradycyjny moduł projektowania nie sprawdzał się dobrze, gdy programy zaczęły być bardziej skomplikowane –wówczas ich konserwacja i naprawianie błędów było niezwykle trudne. Ktoś mądry wymyślił wtedy, że można by było program dzielić na mniejsze części –tzw. procedury.

Taką procedurę można zawrzeć w funkcji i wywoływać wielokrotnie.

Przykład:

<?php

function Fahrenheit( $Celsius )

{

return ( $Celsius * 9/5 + 32 );

}

$Celcius = 30;

echo "$Celcius stopni Celsjusza to " . Fahrenheit($Celcius) . " stopni Fahrenheita";

?>


Komunikacja z bazą danych MySQL w PHP

Prosty przykład obrazujący komunikację z bazą danych MySQL za pośrednictwem PHP:

<?php

$polaczenie = mysql_connect('localhost', 'uzytkownik', 'haslo');

$wybranaBaza= mysql_select_db('mojabaza',);

if($polaczenie)

{

print 'Połączenie nawiązane<br/>';

if($wybranaBaza)

{

print 'Baza wybrana';

$zapytanie= mysql_query('SELECT id, nazwa FROM tabela');

$tablica= mysql_fetch_array($zapytanie);

print '<br/>Pobrane dane: ';

print_r($tablica);

}

else

{

print 'Nie można wybrać bazy<br/>';

}

} else

{

print 'Nie można nawiązać połączenia';

}

mysql_close($polaczenie);

?>


(C) EdU 2015