Waarde van een variable
Dus:
$achternaam = Jansen;
$een = "achter";
$twee = "naam";
$drie = $een . $twee;
Nu wil ik de waarde (dus Jansen) van variable $drie.
Ik deed dit met deze code:
${$drie};
Maar die werkt om een of andere reden niet meer sinds ik op een andere server zit. Ik kan niks in php.ini aanpassen. Weet iemand een oplossing?
Alvast bedankt
Gewijzigd op 01/01/1970 01:00:00 door Hendrik
$twee = "naam";
$drie = $een.$twee;
echo $drie;
//output: achternaam
Alsof er $achternaam; staat.
Gewijzigd op 01/01/1970 01:00:00 door Hendrik
echo ${$een.$twee);
doe je btw wel
echo ${$drie};
in plaats van gewoon
${$drie};
Maar uiteindelijk schrijf ik die waarde in een relationele database. ik hoef hem niet op het scherm weg te schrijven.
${$drie}; werkt prima op de oude server. Op de nieuwe server niet meer...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$een = 'achter';
$twee = 'naam';
${$een.$twee} = 'Jansen';
echo $achternaam;
/* Output:
Jansen
*/
?>
$een = 'achter';
$twee = 'naam';
${$een.$twee} = 'Jansen';
echo $achternaam;
/* Output:
Jansen
*/
?>
Ben er inmiddels uit. Bedankt dus voor de reacties.
Probleem had te maken met $HTTP_POST_VARS. Dus met het doorsturen van de variable via een formulier. Dit was anders ingesteld op deze server.
Gewijzigd op 01/01/1970 01:00:00 door Hendrik
Lees wat informatie over superglobals, bijvoorbeeld op php.net.
Maar er zijn ongetwijfeld betere links te vinden.
Zo kan je ook helemaal niks ervoor zetten. Gelijk de variable uit een formulier gebruiken ALS dat maar goed ingesteld is in de php.ini file. Maar echt nette code is het niet.
Ik draai mijn scripts niet op mijn eigen server. Gevolg is dat bij een verhuizing ik steeds te maken krijg met een andere php.ini.
Gewijzigd op 01/01/1970 01:00:00 door Hendrik
Quote:
In PHP 4.2.0 and later, the default value for the PHP directive register_globals is off. This is a major change in PHP. Having register_globals off affects the set of predefined variables available in the global scope. For example, to get DOCUMENT_ROOT you'll use $_SERVER['DOCUMENT_ROOT'] instead of $DOCUMENT_ROOT, or $_GET['id'] from the URL http://www.example.com/test.php?id=3 instead of $id, or $_ENV['HOME'] instead of $HOME.
Dus vanaf PHP 4.2.0 staat hij standaard al uit, en ik kan me niet voorstellen dat een host hem weer aanzet.
En wat bedoel je met niks ervoor kunnen zetten?
Edit
Een paar artikels:
http://www.phphulp.nl/php/tutorials/2/139/]
http://www.sitemasters.be/?pagina=tutorials/tutorials&cat=4&id=141
http://phpfreakz.nl/artikelen.php?aid=88
Hiermee kom je er denk ik wel...
Gewijzigd op 01/01/1970 01:00:00 door Willem Jan Z