Introductie in: PHP
Groei in webapplicaties Groei in webapplicaties Het ontstaan van PHP Het ontstaan van PHP De client-serverarchitectuur De client-serverarchitectuur De combinatie PHP, MySQL, Apache De combinatie PHP, MySQL, Apache Werken met PHP Werken met PHP VariabelenVariabelen BesturingsstructurenBesturingsstructuren Ingebouwde functiesIngebouwde functies PHP code schrijvenPHP code schrijven In deze presentatie Groei in webapplicaties >
Introductie in: PHP Groei in webapplicaties Communicatie verloopt via zogenaamde “middleware” waaronder PHP valt. “middleware” waaronder PHP valt. Het ontstaan van PHP >
Introductie in: PHP Het ontstaan van PHP Rasmus LerdorfRasmus Lerdorf Personal Home PagePersonal Home Page Forms Interpreter Simpele set van PerlSimpele set van Perlscripts Marktaandeel: nihilMarktaandeel: nihil PHP/FI PHP/FI 2.0 PHP 3 PHP 4
Introductie in: PHP Het ontstaan van PHP PHP/FI PHP/FI 2.0 PHP 3 PHP 4 Open sourceOpen source Implementatie CImplementatie C Marktaandeel: 1%Marktaandeel: 1%
Introductie in: PHP Het ontstaan van PHP PHP/FI PHP/FI 2.0 PHP 3 PHP 4 Zeev SuraskiZeev Suraski Andi Gutmans Meer support voorMeer support voor databases & APIs derden databases & APIs derden Marktaandeel: 10%Marktaandeel: 10%
Introductie in: PHP Het ontstaan van PHP PHP/FI PHP/FI 2.0 PHP 3 PHP 4 Zend engineZend engine Verbeterde performanceVerbeterde performance Diverse uitbreidingenDiverse uitbreidingen SAPISAPI Marktaandeel: 20+%Marktaandeel: 20+% PHP 4 architectuur Client-serverarchitectuur >
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux)
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux)
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux)
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux)
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux)
Introductie in: PHP De client-serverarchitectuur De clientDe client De webbrowser Een Javascript Een applicatie De webserverDe webserver Informatie verwerking Stabiliteit De relationele databaseDe relationele database Opslag informatie RelationeelSQL MiddlewareMiddleware Communicatie tussen twee servers Het besturingssysteemHet besturingssysteem Windows NT/2000 UNIX (o.a. Linux) De combinatie PHP, MySQL en Apache >
Introductie in: PHP De combinatie PHP, MySQL, Apache
Introductie in: PHP De combinatie PHP, MySQL, Apache PHP Open source Open source Compatibiliteit Compatibiliteit Brede ondersteuning Brede ondersteuning PHP vs ASP: PHP is stabieler, sneller en efficiënter PHP vs ColdFusion: PHP is sneller, efficiënter PHP vs Perl en Java (JSP) : PHP is voor webapplicaties, minder complex
Introductie in: PHP De combinatie PHP, MySQL, Apache PHP Open source Open source Compatibiliteit Compatibiliteit Brede ondersteuning Brede ondersteuning PHP vs ASP: PHP is stabieler, sneller en efficiënter PHP vs ColdFusion: PHP is sneller, efficiënter PHP vs Perl en Java (JSP) : PHP is voor webapplicaties, minder complex MySQL Open source Open source Beperkte functionaliteiten Beperkte functionaliteiten Extreem snel bij kleine tot Extreem snel bij kleine tot middelgrote databases middelgrote databases Andere relationele database systemen: OracleSQL server SybaseDB2 Informatix Nadeel: Hoge prijzen ( duizend euro)
Introductie in: PHP De combinatie PHP, MySQL, Apache PHP Open source Open source Compatibiliteit Compatibiliteit Brede ondersteuning Brede ondersteuning PHP vs ASP: PHP is stabieler, sneller en efficiënter PHP vs ColdFusion: PHP is sneller, efficiënter PHP vs Perl en Java (JSP) : PHP is voor webapplicaties, minder complex MySQL Open source Open source Beperkte functionaliteiten Beperkte functionaliteiten Extreem snel bij kleine tot Extreem snel bij kleine tot middelgrote databases middelgrote databases Andere relationele database systemen: OracleSQL server SybaseDB2 Informatix Nadeel: Hoge prijzen ( duizend euro) Apache Open source Open source Functionaliteit in modules Functionaliteit in modules Snel en stabiel Snel en stabiel
Introductie in: PHP De combinatie PHP, MySQL, Apache PHP Open source Open source Compatibiliteit Compatibiliteit Brede ondersteuning Brede ondersteuning PHP vs ASP: PHP is stabieler, sneller en efficiënter PHP vs ColdFusion: PHP is sneller, efficiënter PHP vs Perl en Java (JSP) : PHP is voor webapplicaties, minder complex MySQL Open source Open source Beperkte functionaliteiten Beperkte functionaliteiten Extreem snel bij kleine tot Extreem snel bij kleine tot middelgrote databases middelgrote databases Andere relationele database systemen: OracleSQL server SybaseDB2 Informatix Nadeel: Hoge prijzen ( duizend euro) Apache Open source Open source Functionaliteit in modules Functionaliteit in modules Snel en stabiel Snel en stabiel Waarom? Sluiten perfect op elkaar aan Sluiten perfect op elkaar aan Deze open–sourcesoftware is gratis te Deze open–sourcesoftware is gratis te verkrijgen en te gebruiken verkrijgen en te gebruiken Werken met PHP: Variabelen >
Introductie in: PHP Werken met PHP: Variabelen
Introductie in: PHP Werken met PHP: Variabelen Variabelen in PHP worden voorafgegaan met een dollarteken ($)
Introductie in: PHP Werken met PHP: Variabelen Variabelen in PHP worden voorafgegaan met een dollarteken ($) Type Variabele Strings Strings Intergers Intergers Floating-point Floating-point Array´s Array´s Objecten Objecten
Introductie in: PHP Werken met PHP: Variabelen Variabelen in PHP worden voorafgegaan met een dollarteken ($) Type Variabele Strings Strings Intergers Intergers Floating-point Floating-point Het verkrijgen van variabelen Toekenning Toekenning Uit een HTML form Uit een HTML form Uit een URL Uit een URL Via cookies Via cookies Via een sessie Via een sessie Uit een HTML Anker Uit een HTML Anker Array´s Array´s Objecten Objecten
Introductie in: PHP Werken met PHP: Variabelen $a = “dit is een $string” ; // dit is een string $b = 3 ;// dit is een integer $c = ; // dit is een floating-point $d = array( “var1” => “test1” ”var2” => ”test2”);// dit is een array ”var2” => ”test2”);// dit is een array echo $a ;// de functie echo afgedrukt Variabelen in PHP worden voorafgegaan met een dollarteken ($) Type Variabele Strings Strings Intergers Intergers Floating-point Floating-point Het verkrijgen van variabelen Toekenning Toekenning Uit een HTML form Uit een HTML form Uit een URL Uit een URL Via cookies Via cookies Via een sessie Via een sessie Uit een HTML Anker Uit een HTML Anker Array´s Array´s Objecten Objecten
Introductie in: PHP Werken met PHP: Variabelen Het doel van PHP is het aanleveren van informatie, die gebaseerd is op de invoergegevens van een gebruiker
Introductie in: PHP Werken met PHP: Variabelen Het doel van PHP is het aanleveren van informatie, die gebaseerd is op de invoergegevens van een gebruiker Deze informatie gehaald worden uit HTML Formulieren via POST of GET, meegestuurd worden via cookies of bijgehouden worden in sessies.
Introductie in: PHP Werken met PHP: Variabelen </form> Het doel van PHP is het aanleveren van informatie, die gebaseerd is op de invoergegevens van een gebruiker Deze informatie gehaald worden uit HTML Formulieren via POST of GET, meegestuurd worden via cookies of bijgehouden worden in sessies.
Introductie in: PHP Werken met PHP: Variabelen setcookie(naam, waarde, time_to_expire, path, domein, beveiligingsinstellingen); beveiligingsinstellingen); setcookie(“mijncookie”, “cookieinfo”, time()+(60*60*24*30), “/”, “.mijndomein.com”, 0); “/”, “.mijndomein.com”, 0); Het doel van PHP is het aanleveren van informatie, die gebaseerd is op de invoergegevens van een gebruiker Deze informatie gehaald worden uit HTML Formulieren via POST of GET, meegestuurd worden via cookies of bijgehouden worden in sessies.
Introductie in: PHP Werken met PHP: Variabelen session_start();session_register(gebruikers_id); $gebruikers_id = “kees31”; Het doel van PHP is het aanleveren van informatie, die gebaseerd is op de invoergegevens van een gebruiker Deze informatie gehaald worden uit HTML Formulieren via POST of GET, meegestuurd worden via cookies of bijgehouden worden in sessies.
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT.
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT. Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags:
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT. Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Variabelen kunnen getest worden met functies zoals : isset() en empty(). Ook zijn er ´type´ functies zoals : is_int(), is_string() enz.
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT. Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Variabelen kunnen getest worden met functies zoals : isset() en empty(). Ook zijn er ´type´ functies zoals : is_int(), is_string() enz. if(empty($naam)) { echo ”Voer uw naam in” ; exit; }
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT. Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Variabelen kunnen getest worden met functies zoals : isset() en empty(). Ook zijn er ´type´ functies zoals : is_int(), is_string() enz. // casting $a = 1 ; $b = (string) $a ;
Introductie in: PHP Werken met PHP: Variabelen Een PHP omgeving heeft tal van ingebouwde variabelen Deze variabelen zijn bijvoorbeeld: array's met POST, GET en cookie variabelen; HTTP_REFERER en HTTP_USER_AGENT. Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Om alle variabelen te overzien kan een overzicht worden opgeroepen met phpinfo() ;. Dit moet geplaatst worden binnen de PHP tags: Variabelen kunnen getest worden met functies zoals : isset() en empty(). Ook zijn er ´type´ functies zoals : is_int(), is_string() enz. //functie settype(); $a = 1 ; settype ($a, “string"); Werken met PHP: Besturingsstructuren >
Introductie in: PHP Werken met PHP: Besturingsstructuren Besturingsstructuren zijn de bouwstenen van programmeertalen
Introductie in: PHP Werken met PHP: Besturingsstructuren Besturingsstructuren zijn de bouwstenen van programmeertalen if ($submit = “wijzigen”) { // voer een wijzigpagina uit } elseif ($submit = “aanpassen”) { // voer een aanpassingspagina uit } else ($submit = “verwijderen”){ // voer een verwijderpagina uit } De hoeksteen van alle programmeertalen: de IF-opdracht
Introductie in: PHP Werken met PHP: Besturingsstructuren Besturingsstructuren zijn de bouwstenen van programmeertalen // Vergelijkende operatoren zijn: ==, ===, !=, >, =, <= // Logische operatoren zijn: and, &&, or, ||, xor, ! if ($var == 1 && $var2 <= 5 && !empty($var3)) { //Uit te voeren acties } De hoeksteen van alle programmeertalen: de IF-opdracht
Introductie in: PHP Werken met PHP: Besturingsstructuren Diverse lusstructuren binnen PHP
Introductie in: PHP Werken met PHP: Besturingsstructuren Diverse lusstructuren binnen PHP // $naam is een array while (list($key, $value) = each ($naam)) { echo “$key: $value \n” ; } De while-lus
Introductie in: PHP Werken met PHP: Besturingsstructuren Diverse lusstructuren binnen PHP do { // de code }while (conditie) De do - while-lus
Introductie in: PHP Werken met PHP: Besturingsstructuren Diverse lusstructuren binnen PHP $myarray = array (kees, jan, piet); for ($i = 0; $i <count($myarray); $i++) { echo $myarray[$i]. “ \n”; } De for-lus Werken met PHP: Ingebouwde functies >
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt zeer veel ingebouwde functies
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt zeer veel ingebouwde functies Basisstructuur functies return_type functie_naam(argument1, argument2, [argument3])
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt zeer veel ingebouwde functies Basisstructuur functies return_type functie_naam(argument1, argument2, [argument3]) Het gegevenstype wat wordt teruggegeven door de functie De naam van de functie de functie De argumenten (parameters) die aan een functie kunnen worden toegevoegd worden toegevoegd
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt meer in totaal 33 functies voor het aansturen van een MySQL database De belangrijkste hiervan zijn bedoeld om de database mee aan te spreken: o.a. mysql_connect(), mysql_select_db(), mysql_query(), mysql_fetch_array()
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt meer in totaal 33 functies voor het aansturen van een MySQL database De belangrijkste hiervan zijn bedoeld om de database mee aan te spreken: o.a. mysql_connect(), mysql_select_db(), mysql_query(), mysql_fetch_array() Bij webapplicaties is het verwerken van strings één van de belangrijkste taken. PHP heeft daarvoor ongeveer 70 functies beschikbaar waarmee vrijwel elke bewerking kan worden uitgevoerd op een string : a.o. strip_tags(), str_replace(), strlen(), strtolower(), trim()
Introductie in: PHP Werken met PHP: Ingebouwde functies PHP biedt meer in totaal 33 functies voor het aansturen van een MySQL database De belangrijkste hiervan zijn bedoeld om de database mee aan te spreken: o.a. mysql_connect(), mysql_select_db(), mysql_query(), mysql_fetch_array() Bij webapplicaties is het verwerken van strings één van de belangrijkste taken. PHP heeft daarvoor ongeveer 70 functies beschikbaar waarmee vrijwel elke bewerking kan worden uitgevoerd op een string : a.o. strip_tags(), str_replace(), strlen(), strtolower(), trim() Daarnaast zijn er nog functies om complexe patronen te vergelijken, De zogenaamde reguliere expressie : $ = $ ); // het adres klopt dus geeft de functie TRUE terug Werken met PHP: PHP code schrijven >
Introductie in: PHP Werken met PHP: PHP code schrijven
Introductie in: PHP Werken met PHP: PHP code schrijven Overzichtelijkheid in het schrijven van een stuk code staat voorop
Introductie in: PHP Werken met PHP: PHP code schrijven Overzichtelijkheid in het schrijven van een stuk code staat voorop Aantal principes: InspringenInspringen CommentaarCommentaar Include-opdrachtInclude-opdracht Gebruikers gedefinieerde functiesGebruikers gedefinieerde functies Function optellen($getal_1, $getal_2) {if (!is_int($getal_1) || !is_int($getal_2)) { return FALSE; } $som = $getal_1 + $getal_2; Return $som; }
Introductie in: PHP Werken met PHP: PHP code schrijven Overzichtelijkheid in het schrijven van een stuk code staat voorop Aantal principes: InspringenInspringen CommentaarCommentaar Include-opdrachtInclude-opdracht Gebruikers gedefinieerde functiesGebruikers gedefinieerde functies require “test.php”; // commentaar 1 # commentaar 2 /* commentaar 3 */
Introductie in: PHP Werken met PHP: PHP code schrijven Overzichtelijkheid in het schrijven van een stuk code staat voorop Aantal principes: InspringenInspringen CommentaarCommentaar Include-opdrachtInclude-opdracht Gebruikers gedefinieerde functiesGebruikers gedefinieerde functies class Test {require “test.php”; var $waarde; //eigenschappen$t = new Test; //instantie aanmaken function Test($waarde=0)if(!$t->waarde) {{ //doe wat if {$waarde == 0)} { return ; }Class Test2 extends Test $this ->waarde=$waarde{ // overerving class Test }} Code schrijven: Procedurele codeProcedurele code Object georiënteerde codeObject georiënteerde code Beide hebben voordelen en nadelenBeide hebben voordelen en nadelen Meer informatie >
Introductie in: PHP Meer informatie is te vinden op o.a.: Meer informatie is te vinden op o.a.: HyperText Preprocessor Home Page: Dit is de homepage van PHP. Vanaf de homepage kan de handleiding of één van de vele mailinglijsten worden geraadpleegd. Uiteraard is ook de PHP software via deze site te verkrijgen en zijn er links te vinden van mirror-sites over de hele wereld. Zend: The PHP company Het hart van PHP wordt gevormd door de Zend-engine. Deze engine is gemaakt door Zeev Suraski en Andi Gutmans. Op deze website zijn tal van informatie bronnen te vinden op het gebied van PHP; o.a. een wijzigingenlijst, een codebibliotheek, diverse toepassingen, en een groot aantal handleidingen. Vragen >
Introductie in: PHP Zijn er nog vragen? Zijn er nog vragen?
Einde Presentatie