21/6/2009

Php

Filed under: — cybrarian @ 12:10 am

php

quickref.php
classes



LAMP combinatie= Linux server met Apache webserver, MySQL databank, waar PHP dient
als de taal om de middelen tot een werkend systeem te maken; bronnen te combineren tot inhoud, interactie toe te laten, enz.
Op te merken is dat er heel wat kant en klare PHP programma’s bestaan binnen de LAMP context, zoals de veel CMS systemen.
Daarnaast is het mogelijk zelf applicaties te schrijven, ook voor kleinschalig gebruik in een kleine vereniging of KMO,
of voor eigen gebruik.
De verzamelde informatie hier is bestemd voor eigen gebruik op intranet; daardoor kijk ik niet naar de beveiligingsnoden die bestaan op internet; daarvoor moet je andere bronnen raadplegen!

Informatie over je (lamp-)php-installatie: phpinfo();

Informatie over variabelen: print_r($GLOBALS);

Of ook variabele-type: var_dump(); var_dump($GLOBALS); var_dump($COLUMNS);

Als display_errors af staat kan je in je script opnemen:

ini_set('display_errors',1); error_reporting(E_ALL&~E_NOTICE);

Variabelen
Strings
Voorbeeld

Reeks lettertekens tussen enkele of dubbele aanhalingstekens:
"1972"

'$wie zei: "hoe gaat het ermee?" ' (enkel: letterlijk verwerkt, variabelenaam blijft staan)
"Ik zei: \"hoe gaat het ermee?\" " (dubbel: niet letterlijk; variabelen worden geparst)

Speciale tekens opvangen: “magic quotes”

Magic_quotes vangt automatisch speciale tekens op door ze te “escapen” met een backslash.
De instellingen in php nakijken met ini_get:

ini_get('magic_quotes_gpc') gegevens van Get Post Cookie
ini_get('magic_quotes_runtime') gegevens uit database
ini_get('magic_quotes_sybase') (?)

Geeft bv: magic_quotes_gpc: 1 ; magic_quotes_runtime: 0; magic_quotes_sybase : 0

Als magic_quotes aanstaat kan je stripslashes gebruiken: stripslashes($posting)

Als het niet aanstaat en je wil het emuleren voor opslag in DB: addslashes($string);

htmlspecialchars() : sommige html tags naar entiteit.
htmlentities() : alle html-tags naar entities.
html_entity_decode() : entiteiten naar html code.
nl2br() : new line naar html br

strip_tags() : alle html en php tags

Getallen
Voorbeeld

integer: 1 1972 -1
floating point: 1.0 19.72 -1.0

Toekenning

Door het “is gelijk aan” teken: $nG1 = 5; $nG2 = $nG1;. Automatisch wordt een nieuw geheugengebied gemaakt en de waarde erin gekopieerd.

Type

Er is geen strong-typing in php. Wel gedwongen conversie:

$varnaam = (type) value;
$getal=(integer)5; $tekenreeks=(string)"hoe gaat het ermee?";

Testen op het type doe je met de is_ functies:

is_string(); is_int(); is_numeric(); is_array(); is_bool(); is_float(); is_object(); is_resource(); is_scalar()

Referenties

Een referentie wordt aangegeven door het & teken; $nNum3 = &nNum1; het is een alias voor de oorspronkelijke variabele (geen pointer zoals in C).

Getallen weergeven

Met parameters bij de variabele: aantal decimale plaatsen, decimaalteken, scheidingsteken


number_format($n, 2, ',', '.')
geeft 1.234,56
number_format($n, 2, ',', ' ') geeft 1 234,56
number_format($n, 2, ',', '') geeft 1234,56

Arrays

1-dimensionaal, n-dimensionaal, geïndexeerd, associatief, index : Zie arrays

Objecten

PHP5: class definitie met constructor (twee underscores):
Class clsObject {
function __construct(){}
}

PHP4: class definitie met naam van classe als constructor:

Class clsObject {
function clsObject(){
}


$objectN = new clsObject();
nieuwe instantie van classe

Stel dat de bewerking/functie setValue gedefinieerd is in de klasse:
objectN->setValue("eerste"); (ipv bv objectN.setValue)

Functie van een klasse wordt soms “methode” genoemd.

Garbage Collection (huisvuilophaling)
Van belang bij complexe variabelen (objecten) of grote arrays.
constructor
destructor geeft oon andere gebruikte objecten het opruimbevel
externe objecten (resources) regelen in principe hun eigen geheugenbeheer. Wel juist aanroepen van hun Close, Clean, End enz. functies.
function __destruct(){}

Bronnen:

Basiscursus PHP 4.2
()

Erfolgrich starten mit PHP

(best friend/ Data Becker)

Build Your Own Database Driven Website Using PHP & MySQL
(sitepoint)

PHP4 Kochbuch

(Hanser)

MySQL/PHP Database Applicaties
(Academic Service)

Advanced PHP Programming
(Developer’s Library)

PHP5 & MySQL5
(open source library)

Snel op weg PHP, Larry Ullman
2004 peachpit press/Pearson Education
(Visual Quickstart Guide, second edition)

Zie ook links www

Reacties zijn gesloten.

Powered by WordPress