login  Naam:   Wachtwoord: 
Registreer je!
 Forum

standaard waarde in functie

Offline Ultimatum - 05/06/2007 15:03
Avatar van UltimatumPHP expert Ik heb een functie er zo uitziet

function language($id, $lang), maar nu wil ik dus dat $lang de waarde van een sessie heeft en niet elke keer als ik de functie language aanroep als parameter $id EN $lang mee geven, dus alleen $id. Als ik $lang = 'en' doe werkt het wel maar als ik $lang = $_SESSION['lang'] doe krijg ik deze fout

Citaat:
Parse error: parse error, unexpected T_VARIABLE


Waarom kan dit niet?

3 antwoorden

Gesponsorde links
Offline Rens - 05/06/2007 15:05
Avatar van Rens Gouden medaille

Crew algemeen
Probeer het zo:
  1. function language($id, $lang='')
  2. {
  3. if(empty($lang))
  4. {
  5. $lang = $_SESSION['lang'];
  6. }
  7. // de rest
  8. }

Dan zet je $lang altijd op leeg (behalve als je die param. invult).
Dan word er gekeken of $lang leeg is.
Zo ja, dan word $_SESSION['lang'] in $lang gezet.
Offline Ultimatum - 05/06/2007 15:09
Avatar van Ultimatum PHP expert Oke bedankt, zo werkt het wel maar waarom moet het met zo'n omweg? Waarom kan ik het niet gelijk als parameter zetten?
Offline Grayen - 05/06/2007 17:03
Avatar van Grayen PHP ver gevorderde Waarschijnlijk omdat de default waarde van een parameter een constante moet zijn. Het voorbeeld van Rens is na mijn weten de enige en beste oplossing.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.183s