Przejdź do treści

Składnia PHP - podstawy

Article image
Nardastudio PHP article image
Autor: NardaStudio Data: 13 Nov 2019

PHP - podstawy składni

Przy budowie nowych stron i aplikacji wypada używać wersji powyżej 7.1. Oczywiście nie tylko z przyczyny szybkości, ale też bezpieczeństwa. Dla wersji 7.1 wsparcie kończy się z 1 grudnia 2019, natomiast dla 5.6 oraz 7.0 wsparcie zakończyło się w roku 2018.

Dokumentacja i jej używanie

Oficjalną dokumentację znajdziemy pod adresem PHP.NET. Przeszukiwanie dokumentacji przez stronę google.com z atrybutem site:php.net jest bardzo pomocne. Warto również do dokumentacji często zaglądać, ponieważ nie ma kursu lub książki, która poruszyła by wszystkie aspekty zawarte w dokumentacji. Jest to najlepsze źródło wiedzy.

Inne źródła

Szybki skrót

Pliki php oraz znaczniki w kodzie html
  • <% some_code; %> - wycofany od PHP7
  • <script="php"> some_code; </script> -wycofany od PHP7
  • <?php some_code; ?> - działa w każdej wersji PHP. Najczęstsze rozwiązanie.
  • <?= some_code; ?> - alternatywa dla echo. Od wersji PHP5.4. Wcześniej musi być włączone short_open_tag.
  • <? some_code; ?> - w php.ini musi być włączone ustawienie short_open_tag. Nie powinno się stosować.
Echo
  • echo some_code;
  • echo some_code, some_code;
  • echo(some_code);
  • print(some_code);
  • print_r($array);
Komentarze
  • // jednowierszowy komentarz
  • # jednowierszowy komentarz unix
  • /* blokowy komentarz */
Deklaracja

$number_val = 1;
$string_val = "Text";

Predefiniowane zmienne:

$_GET, $_POST, $_FILES, $_SESSIONS, $_COOKIE, $_SERVER

Typy zmiennych
  • boolean: true, false, 0, 1, "", null
  • integer: 0b1100, 014, 12, 0xc
  • float (double): 1.8, 1.34, 1.82e4
  • string: "Text", 'Text', heredoc, nowdoc
  • arrays
  • objects
  • resource
  • null
Zmienna - nawiasy klamrowe

$var = 'number';
${$var . '_var'} = 45;

Zmienna zmiennej
$var = 'string value';
$var2 = 'var';
echo $$var2;
Otrzymana zostanie zawartość zmiennej $var, czyli 'string value'.

 

Sprawdzanie typów, rzutowanie, usuwanie

isset(), gettype(), settype(), intval(), doubleval(), is_int(), is_float(), is_object(), unset()

Variable handling Functions.

$variable = (float) 5;

 

Stałe
  • define("SITELINK", "http://example.com");
  • define("CONFIG", ['user', 'email']);
  • const NAME = "JULIET";

Predefiniowane stałe - Reserved constants
"Magiczne" stałe - Magic constants

Funkcje które warto znać

String

  • $name = 'Narda';
  • $str1 = '$name \n';
  • $str2 = "$name \n";
Konkatenacja
  • echo "Text" . $variable;
  • $stringval .= "Text";
Przydatne funkcje

strlen(), str_replace(), strrev(), explode(), implode()

Tablice

  • $var_arr = array(1, 2, 3, 4, 5);
  • $var_arr = [1.3, 5, "GI"];
  • echo $var_arr[1];
  • $var_arr = [[1,2], [3,4]];
  • $var_arr[1][1];
  • $var_arr = ["a" => 1, "b" => 2, "c" => 3];
  • $var_arr["a"];
Funkcje

sort(), rsort()

Instrukcje warunkowe i pętle

If ... else if ... else | switch
  • if($condition){...}
  • if($cond){...}elseif($cond){...}else{...}
  • if($cond): ... elseif($cond): ... endif;
  • $var = $cond ? true : false;
  • switch($cond){case $val: code; break; default: code;}
While ... do while | continue i break
  • while($cond){...}
  • while($cond): ... endwhile;
  • do{...}while($cond);
  • break; continue;
For ... foreach
  • for($i = 1; $i < $var; $i++){...}
  • for($i = 1; $i < $var; $i++): ... endfor;
  • foreach($array as $key){...}
  • foreach($array as $key => $value){...}

Operatory

Przypisania:

= += *= /= %=

Arytmetyczne

+ - * / % **

Logiczne

and or xor ! && ||

Porównania

== === != <> <= <=> ??

Funkcje

function nameOfFunc($arg){ some_code; return x; }

Zasięg zmiennych

Lokalna zmienna - zdefiniowana wewnątrz funkcji jest ograniczona do jej wnętrza.

$variable = 538;
function nameOfFunc(){
global $variable;
$variable = 10;
return $variable;
}

function otherFunc(){
$GLOBALS['variable'] = 23;
return $GLOBALS['variable'];
}

Zmienna statyczna

function staticVar($arg){
static $a = 0;
return $a += $arg;
}

staticVar(10); //$a will be 10 after output
staticVar(40); //$a will be 50 after output

Argumenty
  • function nameOfFunc($val1, $val2, $val3){...}
  • function nameOfFunc($val1 = "value"){...}
  • function nameOfFunc(array $val1){...}
  • function nameOfFunc(&$val1){...}
Anonimowe

$multiply = function($a, $b){
return $a * $b;
};

Ta strona nie jest kompatybilna z twoim urządzeniem. Uruchom stronę na komputerze lub nowszym urządzeniu.