Vars binnen en buiten functie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Cedric

Cedric

02/03/2008 13:11:00
Quote Anchor link
Hallo

Ik ben bezig met het maken van een klein CMS'je en stoot op het volgende probleem: Ik wil dat iedere gebruiker een taal kan kiezen. Dit doe ik met deze functie:
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
<?php
function SetLang($language)
{

    global $lang;
    global $system_error;
    
    if(file_exists("../langs/".$language.".lang.php"))
    {

        include("../langs/".$language.".lang.php");
    }

    else
    {    
        include("../langs/en.lang.php");
        $system_error[] = "Language file \"".$language."\" not found. Changing language to English.";    
    }
}

?>


Het is dus de bedoeling dat het taalbestand geînclude wordt. Dat wordt hier gedaan, maar de variabelen kan ik dus niet gebruiken buiten de functie (wat de bedoeling is). Dit kon ik oplossen door deze variabelen global te maken. Dus dit is in feite gelukt.

Nu wil ik, om het gemakkelijk te maken voor gebruikers, veel met includes werken. Zodat ik bijvoorbeeld menu.php include op de site en het menu staat er. Omdat er ook een en ander gecheckt moet worden wil ik dit dmv een functie doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
function Load($module)
{

    include("../modules/".$module.".mod.php");
}

?>

Dit is een basis voor de functie. Als ik dus een bestand laadt op een pagina worden echo's etc natuurlijk uitgevoerd. Maar ik kan niks met die variabelen die erin staan. (zelfde probleem als hierboven). Maar hier kan ik geen global toepassen omdat alle variabelen verschillend zullen zijn. Hoe kan ik ervoor zorgen dat de variabelen wel toegankelijk zijn, of wat is een betere oplossing?

Ik hoop dat ik het een beetje duidelijk uitgelegd heb...

Alvast bedankt
Gewijzigd op 01/01/1970 01:00:00 door Cedric
 
PHP hulp

PHP hulp

26/04/2024 08:49:38
 
Cake Masher

Cake Masher

02/03/2008 13:30:00
Quote Anchor link
Misshien kan je een Config.php file maken, waar je alle variablen in zet die je nodig hebt, en vervolgens deze op elke pagina include..?
 
Cedric

Cedric

02/03/2008 13:41:00
Quote Anchor link
Ik snap niet hoe dat zou kunnen werken?? Het is de bedoeling dat als ik bijvoorbeeld op een pagina een variabele $test aanmaak en daaronder een pagina laad met de functie Load, dat de waarde van $test wordt weergegeven als er op die geïnclude pagina echo $test staat.
 
Jesper Diovo

Jesper Diovo

02/03/2008 13:45:00
Quote Anchor link
Dat hoort gewoon te gebeuren. Maak er zelf ook gebruik van?..
 
Cedric

Cedric

02/03/2008 13:48:00
Quote Anchor link
Wat hoort er te gebeuren? Ik kan even niet volgen..
 
Jesper Diovo

Jesper Diovo

02/03/2008 13:53:00
Quote Anchor link
Als ik het volgende doe:
Index.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$kleur
= "rood";
include("kleur.php");
?>

Kleur.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo $kleur;
?>

werkt dat zoals het hoort bij mij.
 
Cedric

Cedric

02/03/2008 14:08:00
Quote Anchor link
Probeer het eens binnen een functie. De include doen in de functie zoals in mijn voorbeeld..
 



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.