Sì, è possibile farlo in questo modo ma è necessario fare riferimento agli argomenti dell'array $_SERVER['argv']
. $_SERVER['argc']
ti dirà quanti args sono stati ricevuti, se vuoi usarlo come primo livello di validazione per assicurarti che sia stato inserito un numero richiesto di argomenti.
per illustrare questo, eseguendo il seguente script come args.php arg1 arg2 arg3
: uscita
#!/usr/bin/php
<?php
var_dump($argv);
?>
volontà:
array(4) {
[0]=>
string(8) "args.php"
[1]=>
string(4) "arg1"
[2]=>
string(4) "arg2"
[3]=>
string(4) "arg3"
}
Ecco un esempio pratico:
In questo esempio, creeremo uno script (days.php) che emette il numero di giorni da una determinata data. Accetterà 3 parametri, il mese, il giorno e l'anno come numeri.
#!/usr/bin/php
<?php
if($argc < 4 || !is_numeric($argv[1]) || !is_numeric($argv[2]) || !is_numeric($argv[3]))
{
echo "Usage: $argv[0] mm dd yyyy\n";
}
else
{
$pastdate = mktime(0, 0, 0, $argv[1], $argv[2], $argv[3]);
$diff = time() - $pastdate;
$days = round($diff/60/60/24);
echo "$days days since $argv[1]/$argv[2]/$argv[3]\n";
}
?>
Shell chiamata:
`$ ./days 11 17 1988` OR `php days.php 11 17 1988`
uscita:
7699 days since 11/17/1988
Spero che questo aiuti.
Il link tutorial "Accesso a throuh SHELL" reindirizza a un sito di spam! – Avi