Här kommer en grundläggande PHP-kurs på minst 1200 ord. Den riktar sig till nybörjare som vill förstå grunderna i PHP och hur det används för att bygga dynamiska webbplatser.


Introduktion till PHP – En Grundkurs för Nybörjare

Vad är PHP?

PHP står för PHP: Hypertext Preprocessor. Det är ett open source, serverbaserat skriptspråk som används främst för att skapa dynamiska webbsidor. PHP används i kombination med HTML, CSS och JavaScript för att bygga moderna webbsidor och webbapplikationer. Några av världens största plattformar, som WordPress och Facebook, har byggts (helt eller delvis) med PHP.

Till skillnad från HTML, som bara visar innehåll, kan PHP hantera data, interagera med databaser, hantera filer, skapa cookies, sessioner och mycket mer. Det är ett server-side språk, vilket betyder att koden körs på servern innan resultatet skickas till webbläsaren.


Komma igång med PHP

För att skriva och köra PHP behöver du:

  • En webbserver (exempel: Apache)
  • PHP installerat (helst version 7.4 eller senare)
  • En lokal utvecklingsmiljö som XAMPP, MAMP eller Laragon som innehåller både server, PHP och databashanterare som MySQL

Din första PHP-fil

Skapa en fil med ändelsen .php, till exempel index.php, och skriv följande kod:

<?php
echo "Hej världen!";
?>

När du öppnar filen via din servermiljö (t.ex. http://localhost/index.php), ser du texten ”Hej världen!” i din webbläsare. Detta är det enklaste exemplet på hur PHP fungerar.


PHP Syntax och Grundläggande Konstruktioner

Kommentarer

Kommentarer används för att förklara kod. PHP stöder både enkla och flerradiga kommentarer:

// Detta är en enkel kommentar

# Detta är också en kommentar

/*
Detta är en
flerradig kommentar
*/

Variabler

Variabler används för att lagra data. I PHP börjar alla variabler med $.

$namn = "Anna";
$ålder = 28;

PHP är ett dynamiskt typat språk – du behöver inte ange vilken typ variabeln har.

Datatyper

Vanliga datatyper i PHP:

  • String: ”Hej världen”
  • Integer: 1, 100, -25
  • Float: 3.14, -2.5
  • Boolean: true eller false
  • Array: Samling av värden
  • Object: Objekt från klasser
  • NULL: Ingen värd

Operatorer i PHP

PHP har många operatorer, inklusive:

Aritmetiska operatorer

$a = 10;
$b = 5;
$summa = $a + $b; // 15

Jämförelseoperatorer

$a == $b  // Är lika
$a != $b  // Är inte lika

Logiska operatorer

($a == 10) && ($b == 5) // true om båda är sanna

Kontrollstrukturer

If-sats

$ålder = 18;
if ($ålder >= 18) {
    echo "Du är myndig.";
} else {
    echo "Du är inte myndig.";
}

Switch-sats

$dag = "måndag";
switch ($dag) {
    case "måndag":
        echo "Ny vecka!";
        break;
    case "fredag":
        echo "Snart helg!";
        break;
    default:
        echo "Vanlig dag.";
}

Loopar

While-loop

$i = 1;
while ($i <= 5) {
    echo $i;
    $i++;
}

For-loop

for ($i = 0; $i < 10; $i++) {
    echo $i;
}

Foreach-loop (för arrayer)

$frukter = ["äpple", "banan", "päron"];
foreach ($frukter as $frukt) {
    echo $frukt;
}

Funktioner i PHP

Funktioner används för att återanvända kod:

function hälsa($namn) {
    echo "Hej, $namn!";
}

hälsa("Anna"); // Output: Hej, Anna!

Du kan även returnera värden:

function addera($a, $b) {
    return $a + $b;
}

$summa = addera(4, 6); // 10

Arrayer i PHP

Indexerade arrayer

$frukter = ["äpple", "banan", "citron"];
echo $frukter[1]; // banan

Associativa arrayer

$person = ["namn" => "Anna", "ålder" => 30];
echo $person["namn"]; // Anna

Multidimensionella arrayer

$klasser = [
    ["namn" => "Anna", "betyg" => 5],
    ["namn" => "Erik", "betyg" => 4]
];
echo $klasser[0]["namn"]; // Anna

Superglobala Variabler

PHP har flera inbyggda superglobala variabler:

  • $_GET – hämtar data från URL
  • $_POST – hämtar data från formulär
  • $_SESSION – sparar data mellan sidor
  • $_COOKIE – lagrar små bitar av data i användarens webbläsare
  • $_SERVER – innehåller information om servern och miljön

Exempel: formulär med POST

<form method="POST" action="mottagare.php">
  <input type="text" name="namn">
  <input type="submit">
</form>
// mottagare.php
$namn = $_POST["namn"];
echo "Hej, $namn!";

Anslutning till MySQL med PDO

try {
    $db = new PDO("mysql:host=localhost;dbname=testdb", "root", "");
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $stmt = $db->query("SELECT * FROM användare");

    while ($rad = $stmt->fetch()) {
        echo $rad["namn"] . "<br>";
    }
} catch (PDOException $e) {
    echo "Fel: " . $e->getMessage();
}

PDO (PHP Data Objects) är ett säkert sätt att arbeta med databaser och skyddar mot SQL-injektioner.


Sessionshantering

Sessions används för att spara användarinfo mellan olika sidor:

// Starta session
session_start();

// Spara värde
$_SESSION["användare"] = "Anna";

// Hämta värde
echo $_SESSION["användare"];

För att avsluta en session:

session_unset();
session_destroy();

Filhantering i PHP

Skapa och skriv till fil:

$fil = fopen("test.txt", "w");
fwrite($fil, "Detta är en testfil.");
fclose($fil);

Läsa från fil:

$fil = fopen("test.txt", "r");
while (!feof($fil)) {
    echo fgets($fil);
}
fclose($fil);

Säkerhetstips i PHP

  1. Validera all användardata – Använd filter_var() för e-post, URL, m.m.
  2. Sanitera indata – Använd htmlspecialchars() för att förhindra XSS.
  3. Använd PDO med bindParam() för SQL – Undvik SQL-injektion.
  4. Använd HTTPS – Kryptera dataöverföring.
  5. Skydda sessioner – Använd session_regenerate_id() efter inloggning.

PHP och HTML tillsammans

PHP används ofta direkt i HTML:

<html>
<body>
<h1>Hej, <?php echo $namn; ?>!</h1>
</body>
</html>

Avslutning

PHP är ett kraftfullt och flexibelt språk som passar både nybörjare och professionella utvecklare. Det används i allt från enkla kontaktformulär till komplexa CMS-system som WordPress och Drupal.

För att fortsätta din resa med PHP bör du:

  • Lära dig mer om OOP (Objektorienterad programmering)
  • Utforska PHP-ramverk som Laravel eller Symfony
  • Arbeta med API:er och JSON
  • Bygga

en komplett databasdriven applikation


Vill du att jag gör ett komplett PDF-häfte eller dela upp detta i lektioner/moduler?