Een config file in oop
Ik zit nu met een vraag met hoe jullie het volgende zouden oplossen...
Dit is een voorbeeldje:
Voorbeeld scriptje:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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();
?>
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
voorbeeld:
Huh? dit is toch gewoon een return? Anders kan je mijn voorbeeld werkend maken?
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.
Maar vertel eens over die bar($param), want ik ken er niks over vinden?
Code (php)
Simpel toch...
Stel je hebt een config file met daarin een wachtwoord wat je in een class nodig hebt doe het het volgende:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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.
?>
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.
?>
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 :|