Terve,
Mulla on 1 php lähdekoodi-tiedosto, jossa mukana "sisällä" funktio ao. tyyliin.
<?php require_once('asetukset.php'); function dumpQuery() { require_once('asetukset.php'); }
Jos molemmissa on require_once, niin funktion koodissa oleva ei tee includea, vaan asetukset.php:ssä olevat määrittelyt jäävät tulematta koodiin. Toisaalta funktiossa ei sitten taas nähdä itse koodissa olevan require_once:n tuomia määrittelyitä.
Jos muuta funktiossa olevan require_once --> require, niin näyttäisi toimivan.
Onko tässä jotakin mitä en hoksaa ja onko jotenkin tyhmää includeta sama tiedosto kahdesti? Fiksuahan olis välittää tarvittavat muuttuvat funktiolle parametreina.
Kiitos valaisijalle etukäteen!
Muuttujien näkyvyysalueet. Lue koko sivu tarkasti, siellä on paljon tärkeää tietoa.
Kiitti hyvä vinkki!
Tuo $GLOBALS, voisi olla käyttökelpoinen tässä tapauksessa.
Nää 2-uloitteiset on mulla vaikeita.
jos mulla on määritelty
<?php $sivu["otsikko"]="Testiympäristö"; // Nythän tämä voidaan tulostaa echo $sivu["otsikko"];
Miten tämä saadaan näkyviin $GLOBALS-taulukosta?
Noin sitä kokeilin, mutta ei tulosta mitään (=null).
Tuo $GLOBALS-print tulostaa kuten pitääkin ja kaivatut arvot näkyvät arrayssa ok.
Array ( ) [sivu] => Array ( [otsikko] => Olen otsikko)
Oikein hävettää myöntää!
$GLOBALS['sivu']['otsikko'];
kannattaan varmaankin pistää eteen myös echo eli
<?php echo $GLOBALS['sivu']['otsikko'];
niin johan toimii
Sorry!
returnilla saa muutujan myös ulos functiosta.. mut joo ehkä tää on huono vastaus..
Aihe on jo aika vanha, joten et voi enää vastata siihen.