Includen van bestanden / Kennis verrijken

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George van Baasbank

George van Baasbank

18/02/2012 11:47:51
Quote Anchor link
Hallo allemaal,

Ik wil graag mijn ervaringen met PHP vergroten en aarom stel ik het volgende op dit forum:

Ik heb inmiddels verschillende applicaties gebouwd en kom tot de slotsom dat ik in al mijn applicaties steeds op dezelfde wijze variabelen declareer. Dit doe ik door een specifiek .inc-bestand in te sluiten. In dit .inc-bestand zijn een groot aantal vaste variabelen opgenomen die ik gebruik bij o.a. het genereren van foutberichten en e-mailberichten.
Nu is het zo dat ik deze .inc-bestanden steeds in elk .php-bestand insluit. Dit lijkt mij echter wel wat overdreven.
Ik ben dus nu ook op zoek naar een instructie die ik eenmalig kan insluiten in mijn index.php en die blijft functioneren, ongeacht in welk .php-document ik mij ook bevind.
De vragen zijn:
1. Is er een instructie danwel routine in php beschikbaar waarmee ik dit kan bereiken?
2. Heeft iemand een voorbeeld hiervan?

Als voorbeeld hierbij de code van de in te sluiten variabelen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
 * @author George van Baasbank
 * @copyright 2012
 *
 * Idee:            George vasn Baasbank
 * Release:         18 februari 2012
 * Versie:          1.0
 * Bestandsnaam:    esv.inc
 * Doelstelling:    Deze file wordt door elk .phpbestand ingelezen en bevat
 *                  de variabelen welke specifiek ijn voor de applicatie.
 *                  Alle variabelen beginnen met het kenmerk $ESV_ (Ermelo Software Variabele)
 *        
 *
 */

// Applicatievariabelen
$ESV_applicatie = "<Hier komt de applicatienaam>";
$ESV_versie = "<Hier komt het versienummer>";
$ESV_release = "<Hier komt de releasedatum>";
$ESV_taal = "Nederlands";
$ESV_php = "5.2";
$ESV_css = "CSS3";
$ESV_html = "HTML 5";

// Credits
$ESV_ontwerp = "George van Baasbank";
$ESV_design = "BENX Creativity";
$ESV_plaats = "Harderwijk";
$ESV_email = "[email protected]";



Ik kijk uit naar de reacties.


George van Baasbank
 
PHP hulp

PHP hulp

22/12/2024 15:34:11
 
Wouter J

Wouter J

18/02/2012 11:54:52
Quote Anchor link
Ik zou deze dingen niet in variabele stoppen, maar in constants. Daar zijn ze iets meer voor gebaseerd.

Wat je kan doen is dat bestand toevoegen aan de php.ini include_path onder Paths and Directories.

Maar dat lijkt me niet echt geschikt. Ik denk dat het logischer is en praktischer om het gewoon in elk bestand met procedurele code te plaatsen (dus niet de bestanden waarin je alle classes zet, mocht je dat al gebruiker).
 
George van Baasbank

George van Baasbank

18/02/2012 11:58:45
Quote Anchor link
@Wouter,

Als ik constanten gebruik, moet ik die dan ook in elk php-bestand includen?

George
 
Wim E

Wim E

18/02/2012 12:04:40
Quote Anchor link
Je kunt er ook voor kiezen om een klasse aan te maken, singleton op toe te passen, en zo variablen op te halen.
 
Wouter J

Wouter J

18/02/2012 12:04:58
Quote Anchor link
Ja, alleen het verschil tussen constanten en variabele is dat je variabele kan aanpassen in je script en constants niet.

Een voorbeeldje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php

$projectName
= 'PHPhulp++';
echo $projectName; // PHPhulp++

$projectName = 'PHPhulp--';
echo $projectName; // PHPhulp--
// aah dit willen we niet, we gebruiken constants:


define('PROJECT_NAME', 'PHPhulp++');

echo PROJECT_NAME; // PHPhulp++

PROJECT_NAME = 'PHPhulp--'; // error (waarschijnlijk unexpected token = expected ;
?>


@Wim, dan moet je alsnog die class includen dus dat maakt qua dit probleem niet heel veel uit. Tevens zou ik dan de class niet singleton laten zijn, maar gewoon een Registery class hiervoor gebruiken.
Gewijzigd op 18/02/2012 12:06:06 door Wouter J
 
George van Baasbank

George van Baasbank

18/02/2012 12:15:13
Quote Anchor link
Ik zie de laatste tijd veel over Singleton. Wat is dit?
 
Wouter J

Wouter J

18/02/2012 12:19:04
Quote Anchor link
Singleton is een design pattern voor object georiënteerd scripten (doormiddel van classes). Met singleton kun je ervoor zorgen dat je maar 1 instance van een object aanmaakt. Meer informatie: http://nl3.php.net/language.oop5.patterns.php#language.oop5.patterns.singleton
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.