Een config file in oop

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

DDragonz

DDragonz

12/05/2007 20:10:00
Quote Anchor link
Hallo
Ik zit nu met een vraag met hoe jullie het volgende zouden oplossen...
Dit is een voorbeeldje:

Voorbeeld scriptje:
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
<?php
class test
{

  function
test()
  {

    require_once("config.php");
    echo "In test::test() werkt hij!: $testvariable";
    $test2 = new test2();          
  }      
}


class test2
{

  function
test2()
  {

    echo "<br>In test2::test2() werkt hij niet!: $testvariable";
  }      
}


$test = new test();
?>


Je krijgt dan de error:
Notice: Undefined variable: testvariable in H:\test.php on line 20

Ik kan dit oplossen door het volgende tedoen, maar kan het niet anders?:
1. $_GLOBAL["testvariable"] gebruiken
2. Globaal voor de variable zetten en dan de variable setten.
3. Doorgeven met een functie binnen de class. Bv getconfig(en dan alle de vars);

Dit lijkt mij allemaal niet echt goed. Is er geen andere manier om de vars door tegeven?
Grtz DDragonz
 
PHP hulp

PHP hulp

28/03/2024 18:02:12
 
Bo az

Bo az

12/05/2007 20:22:00
Quote Anchor link
Variabelen doorgeven gaat via de parameter list.
voorbeeld:
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
<?php

class Foo{

    public function bar($param){
        return 'Parameter: '.$param;
    }

}


$oFoo = new Foo();
echo $oFoo->bar();

?>
 
DDragonz

DDragonz

12/05/2007 20:29:00
Quote Anchor link
Huh? dit is toch gewoon een return? Anders kan je mijn voorbeeld werkend maken?
 
Bo az

Bo az

12/05/2007 20:33:00
Quote Anchor link
Het gaat niet om de return, het gaat om dit: function bar($param)

Verder is je voorbeeld niet heel duidelijk, bovendien doe je een require binnen een methode in je class, dat is ook niet helemaal de bedoeling, dat zou dan altijd nog voor de class defenitie moeten.
 
DDragonz

DDragonz

12/05/2007 22:03:00
Quote Anchor link
Maar soms moet toch wel iets include in een class. Dat is toch geen probleem?
Maar vertel eens over die bar($param), want ik ken er niks over vinden?
 
Martijn B

Martijn B

12/05/2007 22:07:00
Quote Anchor link
Stel je wil 2 cijfers optellen met een functie (voor klassen heet dat methode). Je maakt dus een functie met 2 parameters:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
function optellen( $cijfer1, $cijfer2 )
{

  return $cijfer1 + $cijfer2;
}


echo optellen(1,2); // geeft: 3
?>


Simpel toch...
 
Bo az

Bo az

12/05/2007 22:16:00
Quote Anchor link
Vertel mij eens waarom je iets zou moeten includen in een class?

Stel je hebt een config file met daarin een wachtwoord wat je in een class nodig hebt doe het het volgende:

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
<?php

class Foo{
    
    public function loadConfig($user, pass){
        // Doe wat ever je wil met $user en $pass;
    }
    
}


require_once 'configfile.php';

$oFoo = new Foo();
$oFoo->loadConfig($conf['user'], $conf['pass']); // Nu heb je het wachtwoord uit de config file tot je beschikking.
    
?>
 
DDragonz

DDragonz

12/05/2007 23:39:00
Quote Anchor link
hmm sorry, maar dat wist ik allang. Maar het hoeft niet meer. Ik heb er al wat op verzonnen zelf. Ik heb het blijkbaar slecht uitgelegd :|
 



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.