PHP Tutorial.nl

Word een PHP expert!!!

Home » Inleiding PHP

Inleiding PHP: Zet je eerste stappen met PHP

PHP is een server-side programmeertaal, wat betekent dat de code wordt uitgevoerd op een server. De server ontvangt een verzoek van een gebruiker (bijvoorbeeld via een browser), voert de PHP-code uit en stuurt het resultaat terug naar de gebruiker.

Geschiedenis van PHP

PHP werd oorspronkelijk ontwikkeld door Rasmus Lerdorf in 1994 en stond voor “Personal Home Page”. Sindsdien is PHP geëvolueerd en staat het nu voor “PHP: Hypertext Preprocessor”. Elke nieuwe versie van PHP heeft significante verbeteringen en nieuwe functies geïntroduceerd, waardoor de taal robuuster en efficiënter is geworden.

Installatie van PHP

Om PHP te gebruiken, moet je het eerst installeren. Hier is een eenvoudige manier om PHP op verschillende besturingssystemen te installeren:

  • Windows: Gebruik XAMPP of WAMP om een lokale serveromgeving in te stellen.
  • macOS: Gebruik MAMP of Homebrew (brew install php).
  • Linux: Gebruik de pakketbeheerder van je distributie, zoals sudo apt-get install php voor Ubuntu.

Syntax

De syntax (schrijfwijze) van PHP ziet er als volgt uit:

<?php
....
?>

Zoals je ziet begint het met <?php hiermee laat je de server weten dat er een stukje php begint. De code eindigt met ?>, hiermee is duidelijk dat de php code ten einde is. We noemen deze opening en sluiting ook wel de php-tags.

Doordat we aangeven waar de PHP code begint en eindigt wordt het mogelijk om de code te combineren met bijvoorbeeld HTML. De stukken die tussen php-tags worden op de server uitgevoerd en tezamen met de HTML teruggestuurd naar de gebruiker.

Tekst weergeven

Het schrijven van code is superleuk, maar zolang je niets ziet heb je er eigenlijk niet veel aan. In PHP kunnen we code weergeven door het commando: echo.

<?php
echo "Hallo wereld";
?>

De gebruiker zal Hallo wereld zien als hij de pagina met deze code opvraagt. Een van de symbolen die van belang is om te weten is de  ;  met dit karakter wordt de einde van een regel aangegeven. 

Iets anders wat opvalt is dat Hallo wereld tussen dubbele quote’s is geschreven. Dat komt omdat het een waarde is van het datatype string.

Datatypen

Alles in PHP is van een bepaalde datatype. Zo heb je verschillende datatypes zoals:

  • Strings: Tekst tussen enkele of dubbele aanhalingstekens.
  • Booleans: Waar (TRUE) of onwaar (FALSE).
  • Integers: Hele getallen.
  • Floats: Getallen met een decimaal.
  • Arrays: Verzamelingen van waarden.

Variabelen

Variabelen in PHP worden voorafgegaan door een dollar-teken ($). Bijvoorbeeld:

<?php
$leeftijd = 25;
$naam = "John";
?>

Operators

PHP ondersteunt verschillende operators voor het uitvoeren van bewerkingen. Enkele voorbeelden van zo’n operator:

  • +: Optellen
  • -: Aftrekken
  • *: Vermenigvuldigen
  • /: Delen

Control Structures

Een ander krachtig middel dat PHP biedt zijn verschillende controle structuren zoals if-else, switch, en loops (for, while). Dit stelt je in staat om complexe logica te implementeren.

<?php
if ($leeftijd > 18) {
    echo "Je bent volwassen.";
} else {
    echo "Je bent minderjarig.";
}
?>

PHP in HTML

PHP kan naadloos geïntegreerd worden in HTML. Dit stelt je in staat om dynamische webpagina’s te maken die reageren op gebruikersinvoer en andere variabelen. Hier is een eenvoudig voorbeeld:

<!DOCTYPE html>
<html>
<head>
    <title>Mijn PHP Pagina</title>
</head>
<body>
    <h1><?php echo "Welkom op mijn website!"; ?></h1>
</body>
</html>

Beveiliging in PHP

Beveiliging is cruciaal bij het ontwikkelen van PHP-toepassingen. Hier zijn enkele basisprincipes:

  • SQL-injecties vermijden: Gebruik voorbereide statements met PDO of MySQLi om SQL-injecties te voorkomen.
  • Gebruikersinvoer valideren: Controleer en filter alle gebruikersinvoer om te voorkomen dat schadelijke data je applicatie binnendringt.
  • Gebruik HTTPS: Zorg ervoor dat je website via HTTPS wordt geladen om gegevens tijdens de overdracht te beschermen.

Functies

Functies in PHP helpen bij het organiseren van code en herbruikbaarheid. Een eenvoudige functie ziet er als volgt uit:

<?php
function zegHallo() {
    echo "Hallo!";
}
zegHallo();
?>

Namespaces in PHP

Namespaces in PHP helpen je om naamconflicten te voorkomen en je code beter te organiseren. Ze zorgen ervoor dat je dezelfde namen voor klassen, functies en constanten kunt gebruiken in verschillende delen van je applicatie zonder dat ze elkaar in de weg zitten. Dit is vooral nuttig in grotere projecten of wanneer je externe bibliotheken gebruikt.

<?php
namespace App\Model;

class Gebruiker {
    public function hallo() {
        return "Hallo, gebruiker!";
    }
}

$gebruiker = new \App\Model\Gebruiker();
echo $gebruiker->hallo(); // Output: Hallo, gebruiker!
?>

Classes en Objectgeoriënteerd Programmeren

Classes en Objectgeoriënteerd Programmeren (OOP) zijn fundamentele concepten in PHP die helpen bij het structureren van code op een georganiseerde en herbruikbare manier. Een klasse is een blauwdruk voor objecten die eigenschappen (variabelen) en methoden (functies) definiëren. Objecten zijn instanties van klassen.

<?php
class Auto {
    public $merk;
    public $kleur;

    public function __construct($merk, $kleur) {
        $this->merk = $merk;
        $this->kleur = $kleur;
    }

    public function beschrijf() {
        return "De auto is een " . $this->kleur . " " . $this->merk;
    }
}

$auto1 = new Auto("Toyota", "rood");
echo $auto1->beschrijf(); // Output: De auto is een rood Toyota
?>

In dit voorbeeld definieert de klasse Auto twee eigenschappen (merk en kleur) en een methode (beschrijf). De constructor (__construct) initialiseert de eigenschappen wanneer een nieuw object wordt gemaakt.

OOP helpt bij het organiseren van complexe applicaties door het gebruik van klassen en objecten, wat leidt tot beter gestructureerde en onderhoudbare code.

Frameworks en Tools

PHP heeft een rijk ecosysteem van frameworks en tools die het ontwikkelproces versnellen en vereenvoudigen. Populaire frameworks zijn:

  • Laravel: Bekend om zijn elegantie en robuuste functionaliteiten.
  • Symfony: Gebruikt voor complexe enterprise-applicaties.
  • CodeIgniter: Een lichte en eenvoudige oplossing voor kleine projecten.