PHP commando of data opties opgeven
Er zijn verschillende manieren om data of gegevens door te geven aan een PHP script van “buitenaf”, dit kan doormiddel van de HTTP URL of via een commandolijn, op deze pagina staan enkele voorbeelden.
Een commando of data via de HTTP URL
Via de URL in een browser kan data worden doorgegeven voor gebruik met het PHP script dat geladen wordt met $_GET["URL variabele"] , bijvoorbeeld:
http://website.com/voorbeeld.php?naam=Bert
De naam Bert kun je nu in het PHP script gebruiken, doormiddel van $_GET["naam"]
Een voorbeeldscript:
1 2 3 |
<?php echo 'Hallo ' . $_GET["name"] . '!'; ?> |
Gebruik http://website.com/voorbeeld.php?naam=Jeroen en bekijk het resultaat!
Je kan zelfs meerdere variabelen gebuiken, bijvoorbeeld:
http://website.com/?naam=Bert&land=Nederland
Achter het php script begin je met een vraagteken ? dan “variabele”=”data”
De volgende variabelen scheid je doormiddel van een “en” teken > &
Een voorbeeldscript:
1 2 3 |
<?php echo 'Hallo ' . $_GET["name"] . ' uit ' . $_GET["land"] . '!'; ?> |
Gebruik http://website.com/voorbeeld.php?naam=Jeroen&Land=Belgie en bekijk het resultaat!
Een commando of data via de commandolijn
Via de commandolijn kan data worden doorgegeven voor gebruik met het PHP script dat geladen wordt met $ARGV["commandolijn argument nr."]; , bijvoorbeeld:
php.exe voorbeeld.php Bert
De naam Bert kun je nu in het PHP script gebruiken, doormiddel van $ARGV[1];
Ps. $ARGV[0]; is altijd het pad+scriptnaam zelf.
Een voorbeeldscript:
1 2 3 |
<?php fwrite(STDOUT, 'Hallo ' . $ARGV[1] . '!';); ?> |
Je kan zelfs meerdere variabelen gebuiken, bijvoorbeeld:
php.exe voorbeeld.php Bert Nederland
Een voorbeeldscript:
1 2 3 |
<?php fwrite(STDOUT, 'Hallo ' . $ARGV[1] . 'uit ' . $ARGV[2] . '!';); ?> |
Variabelen
Voorbeelden om de commandolijn argumenten in variabelen om te zetten:
1 2 |
$naam = $ARGV[1]; $land = $ARGV[2]; |
Maar dit kan ook:
1 |
my ($scriptnaam, $naam, $land) = @ARGV; |