Šta je PHP? Razumevanje Osnova PHP-a

Aleksandar Djekic Live Skola Wordpressa

Meni

PHP, ili Hypertext Preprocessor, je široko korišćen skriptni jezik otvorenog koda, posebno pogodan za veb razvoj i može se ugraditi u HTML. Dovoljno je moćan da bude osnova najvećeg sistema za blogovanje na internetu (WordPress), a dovoljno jednostavan da bude prvi serverski jezik za početnike. Ovaj sveobuhvatni vodič će istražiti šta je PHP, njegov značaj i osnove PHP-a kako bi vam pomogao da započnete sa veb razvojem.

Sadržaj

  1. Uvod u PHP
  2. Značaj PHP-a
  3. Osnovna Struktura PHP Skripte
  4. PHP Sintaksa
  5. PHP Varijable
  6. PHP Tipovi Podataka
  7. PHP Operatori
  8. PHP Kontrolne Strukture
  9. PHP Funkcije
  10. PHP Nizovi
  11. PHP i HTML
  12. PHP Obrada Formi
  13. PHP i Baze Podataka
  14. PHP Bezbednosne Najbolje Prakse
  15. Napredne PHP Tehnike
  16. Često Postavljana Pitanja (FAQ)

1. Uvod u PHP

Šta je PHP?

PHP znači Hypertext Preprocessor. To je serverski skriptni jezik dizajniran specifično za veb razvoj. PHP kod može biti ugrađen u HTML, što olakšava dodavanje dinamičkog sadržaja veb stranicama.

Istorija PHP-a

PHP je stvorio Rasmus Lerdorf 1994. godine. U početku, to je bio skup Common Gateway Interface (CGI) binarnih datoteka napisanih u C jeziku. Od tada se razvijao u punopravni skriptni jezik, sa PHP grupom koja sada nadgleda njegov razvoj.

Za više detaljnih informacija o PHP-u, posetite aleksandardjekic.rs.

2. Značaj PHP-a

Serverski Skript

PHP se prvenstveno koristi za serversko skriptovanje, omogućavajući developerima da kreiraju dinamične veb stranice koje interaguju sa bazama podataka i korisnicima u realnom vremenu.

Otvoreni Kod

PHP je otvorenog koda, što znači da je besplatan za korišćenje i ima veliku zajednicu developera koji doprinose njegovom razvoju i podršci.

Kompatibilnost

PHP je kompatibilan sa raznim operativnim sistemima, uključujući Windows, Linux i macOS. Takođe podržava mnoge veb servere, uključujući Apache i Nginx.

Integracija

PHP se besprekorno integriše sa mnogim bazama podataka, kao što su MySQL, PostgreSQL i SQLite, što ga čini moćnim alatom za razvoj aplikacija koje se baziraju na bazama podataka.

Za više uvida u značaj PHP-a, posetite aleksandardjekic.rs.

3. Osnovna Struktura PHP Skripte

PHP skripta je skup instrukcija koje se izvršavaju na serveru. PHP skripte su zatvorene unutar PHP oznaka:

phpCopy code<?php
// PHP kod ide ovde
?>

Primer PHP Skripte

phpCopy code<?php
echo "Hello, World!";
?>

U ovom primeru, echo naredba ispisuje tekst „Hello, World!“ na veb stranici.

Za više detaljnih uputstava o osnovnoj strukturi PHP skripte, posetite aleksandardjekic.rs.

4. PHP Sintaksa

PHP Oznake

PHP kod je zatvoren unutar PHP oznaka:

phpCopy code<?php
// PHP kod
?>

Echo Naredba

Naredba echo se koristi za ispis teksta:

phpCopy code<?php
echo "Ovo je PHP!";
?>

Komentari

Komentari se koriste za dodavanje objašnjenja u kod. PHP podržava jednostruke (// ili #) i višelinijske (/* */) komentare.

phpCopy code<?php
// Ovo je jednostruki komentar
# Ovo je takođe jednostruki komentar
/*
Ovo je višelinijski komentar
*/
?>

Za više detaljnih objašnjenja o PHP sintaksi, posetite aleksandardjekic.rs.

5. PHP Varijable

Deklarisanje Varijabli

U PHP-u, varijable se deklariraju korišćenjem $ znaka, nakon kojeg sledi ime varijable:

phpCopy code<?php
$imeVarijable = "Vrednost";
?>

Tipovi Varijabli

PHP podržava razne tipove podataka, uključujući stringove, cele brojeve, brojeve sa pokretnim zarezom i booleane.

phpCopy code<?php
$string = "Hello, World!";
$integer = 42;
$float = 3.14;
$boolean = true;
?>

Za više detaljnih informacija o PHP varijablama, posetite aleksandardjekic.rs.

6. PHP Tipovi Podataka

String

String je sekvenca karaktera:

phpCopy code<?php
$string = "Ovo je string.";
?>

Celi Broj

Celi broj je broj bez decimala:

phpCopy code<?php
$integer = 100;
?>

Broj sa Pokretnim Zarezom

Broj sa pokretnim zarezom je broj sa decimalom:

phpCopy code<?php
$float = 10.5;
?>

Boolean

Boolean predstavlja dve moguće vrednosti: true ili false:

phpCopy code<?php
$boolean = true;
?>

Za više detaljnih objašnjenja o PHP tipovima podataka, posetite aleksandardjekic.rs.

7. PHP Operatori

Aritmetički Operatori

PHP podržava standardne aritmetičke operatore:

phpCopy code<?php
$sum = 1 + 2;
$difference = 5 - 3;
$product = 4 * 2;
$quotient = 10 / 2;
$remainder = 7 % 2;
?>

Operatori Poređenja

Operatori poređenja se koriste za poređenje dve vrednosti:

phpCopy code<?php
$equal = ($a == $b);
$notEqual = ($a != $b);
$greaterThan = ($a > $b);
$lessThan = ($a < $b);
?>

Logički Operatori

Logički operatori se koriste za kombinovanje uslovnih izraza:

phpCopy code<?php
$and = ($a && $b);
$or = ($a || $b);
$not = !$a;
?>

Za više detaljnih objašnjenja o PHP operatorima, posetite aleksandardjekic.rs.

8. PHP Kontrolne Strukture

If Naredba

Naredba if se koristi za izvršavanje koda ako je uslov tačan:

phpCopy code<?php
if ($a > $b) {
    echo "a je veće od b";
}
?>

If…Else Naredba

Naredba if...else izvršava jedan blok koda ako je uslov tačan, a drugi blok ako nije:

phpCopy code<?php
if ($a > $b) {
    echo "a je veće od b";
} else {
    echo "a nije veće od b";
}
?>

Switch Naredba

Naredba switch se koristi za izvršavanje različitih radnji na osnovu različitih uslova:

phpCopy code<?php
switch ($color) {
    case "red":
        echo "Boja je crvena";
        break;
    case "blue":
        echo "Boja je plava";
        break;
    default:
        echo "Boja nije ni crvena ni plava";
}
?>

Za više detaljnih uputstava o PHP kontrolnim strukturama, posetite aleksandardjekic.rs.

9. PHP Funkcije

Definisanje Funkcije

Funkcije su blokovi koda koji se mogu ponovo koristiti. Funkcije se definišu korišćenjem ključne reči function:

phpCopy code<?php
function pozdrav() {
    echo "Hello, World!";
}
?>

Pozivanje Funkcije

Funkcije se pozivaju njihovim imenom, praćenim zagradama:

phpCopy code<?php
pozdrav();
?>

Parametri Funkcije

Funkcije mogu primati parametre:

phpCopy code<?php
function pozdrav($ime) {
    echo "Hello, $ime!";
}
pozdrav("Alice");
?>

Za više detaljnih uputstava o PHP funkcijama, posetite aleksandardjekic.rs.

10. PHP Nizovi

Indeksirani Nizovi

Indeksirani nizovi koriste numeričke indekse:

phpCopy code<?php
$fruits = array("Apple", "Banana", "Cherry");
echo $fruits[0]; // Ispisuje: Apple
?>

Asocijativni Nizovi

Asocijativni nizovi koriste imenovane ključeve:

phpCopy code<?php
$ages = array("Alice" => 25, "Bob" => 30, "Charlie" => 35);
echo $ages["Alice"]; // Ispisuje: 25
?>

Multidimenzionalni Nizovi

Multidimenzionalni nizovi sadrže jedan ili više nizova:

phpCopy code<?php
$matrix = array(
    array(1, 2, 3),
    array(4, 5, 6),
    array(7, 8, 9)
);
echo $matrix[0][1]; // Ispisuje: 2
?>

Za više detaljnih objašnjenja o PHP nizovima, posetite aleksandardjekic.rs.

11. PHP i HTML

Ugradnja PHP-a u HTML

PHP se može direktno ugraditi u HTML:

htmlCopy code<!DOCTYPE html>
<html>
<head>
    <title>PHP u HTML-u</title>
</head>
<body>
    <h1><?php echo "Hello, World!"; ?></h1>
</body>
</html>

Generisanje HTML-a sa PHP-om

PHP može dinamički generisati HTML:

phpCopy code<?php
echo "<ul>";
for ($i = 1; $i <= 5; $i++) {
    echo "<li>Stavka $i</li>";
}
echo "</ul>";
?>

Za više detaljnih uputstava o korišćenju PHP-a sa HTML-om, posetite aleksandardjekic.rs.

12. PHP Obrada Formi

Obrada Podataka Forme

PHP može obrađivati podatke poslati kroz forme koristeći $_GET ili $_POST superglobalne promenljive:

phpCopy code<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    Ime: <input type="text" name="name">
    <input type="submit">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = $_POST['name'];
    echo "Hello, $name!";
}
?>

Validacija Podataka Forme

Važno je validirati podatke iz forme kako bi se osiguralo da su tačni i bezbedni:

phpCopy code<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = htmlspecialchars($_POST['name']);
    if (!empty($name)) {
        echo "Hello, $name!";
    } else {
        echo "Ime je obavezno.";
    }
}
?>

Za više detaljnih uputstava o PHP obradi formi, posetite aleksandardjekic.rs.

13. PHP i Baze Podataka

Povezivanje sa Bazom Podataka

PHP može da se poveže sa bazama podataka koristeći ekstenzije kao što su MySQLi ili PDO:

phpCopy code<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
?>

Izvođenje Operacija nad Bazom Podataka

PHP može izvoditi CRUD (Create, Read, Update, Delete) operacije nad bazama podataka:

phpCopy code<?php
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

Za više detaljnih uputstava o korišćenju PHP-a sa bazama podataka, posetite aleksandardjekic.rs.

14. PHP Bezbednosne Najbolje Prakse

Sanitizacija Korisničkog Unosa

Uvek sanitizujte korisnički unos kako biste sprečili SQL injekcije i druge napade:

phpCopy code<?php
$name = htmlspecialchars($_POST['name']);
?>

Korišćenje Pripremljenih Izjava

Koristite pripremljene izjave za upite prema bazama podataka kako biste poboljšali bezbednost:

phpCopy code<?php
$stmt = $conn->prepare("SELECT id, name FROM users WHERE name = ?");
$stmt->bind_param("s", $name);
$stmt->execute();
$result = $stmt->get_result();
?>

Zaštita Osetljivih Podataka

Osigurajte da su osetljivi podaci, kao što su lozinke, sigurno čuvani i obrađivani:

phpCopy code<?php
$password = password_hash("user_password", PASSWORD_DEFAULT);
?>

Za više detaljnih uputstava o PHP bezbednosnim najboljim praksama, posetite aleksandardjekic.rs.

15. Napredne PHP Tehnike

Objektno-Orijentisani PHP

PHP podržava objektno-orijentisano programiranje (OOP):

phpCopy code<?php
class User {
    public $name;

    function setName($name) {
        $this->name = $name;
    }

    function getName() {
        return $this->name;
    }
}

$user = new User();
$user->setName("Alice");
echo $user->getName();
?>

Korišćenje PHP Biblioteka

PHP ima bogat ekosistem biblioteka i framework-ova, kao što je Composer za upravljanje zavisnostima:

bashCopy codecomposer require monolog/monolog

PHP i RESTful API-ji

PHP može biti korišćen za izgradnju i korišćenje RESTful API-ja:

phpCopy code<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.example.com/data");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
?>

Za više detaljnih uputstava o naprednim PHP tehnikama, posetite aleksandardjekic.rs.

16. Često Postavljana Pitanja (FAQ)

1. Šta je PHP? PHP znači Hypertext Preprocessor. To je serverski skriptni jezik dizajniran za veb razvoj.

2. Kako da deklarišem varijablu u PHP-u? Varijable u PHP-u se deklarišu korišćenjem $ znaka, nakon kojeg sledi ime varijable.

3. Koji su PHP tipovi podataka? PHP podržava razne tipove podataka, uključujući stringove, cele brojeve, brojeve sa pokretnim zarezom i booleane.

4. Kako da kreiram funkciju u PHP-u? Funkcije u PHP-u se kreiraju korišćenjem ključne reči function, nakon čega sledi ime funkcije i zagrade.

5. Kako da obradim podatke forme u PHP-u? Podaci forme u PHP-u mogu se obraditi korišćenjem $_GET ili $_POST superglobalnih promenljivih.

6. Kako da povežem PHP sa bazom podataka? PHP se može povezati sa bazama podataka koristeći ekstenzije kao što su MySQLi ili PDO.

7. Koji su PHP operatori? PHP podržava aritmetičke, operatore poređenja i logičke operatore.

8. Kako da osiguram svoje PHP aplikacije? Osigurajte PHP aplikacije sanitizacijom korisničkog unosa, korišćenjem pripremljenih izjava i zaštitom osetljivih podataka.

9. Šta je objektno-orijentisani PHP? Objektno-orijentisani PHP se odnosi na korišćenje klasa i objekata za strukturisanje koda.

10. Kako da koristim PHP sa RESTful API-jem? PHP može interagovati sa RESTful API-jima korišćenjem cURL-a ili funkcije file_get_contents().

Šta je WPLocal i Kako ga Postaviti?

WPLocal je moćan alat za WordPress programere i dizajnere, koji nudi jednostavan način za razvijanje i testiranje WordPress sajtova lokalno na vašem računaru. Ovaj sveobuhvatan vodič objasniće vam šta je

Pogledaj više »