Exécution fichier par les paramètres dans une fonction
Bonjour,
J'ai le code suivant qui marche bien :
Code:
1 2 3 4 5 6 7 8 9 10
| if (PHP_SAPI === 'cli') {
$firstName = $argv[1];
$lastName = $argv[2];
}
else {
$firstName = $_GET['firstName'];
$lastName = $_GET['lastName'];
}
echo 'sans fonction ::: 1er Paramètre : ' . $firstName . PHP_EOL . ' 2e Paramètre : ' . $lastName; |
En fait, pour exécuter mon fichier, il y a deux paramètres : firstName et lastName.
Si je l'exécute par la commande CMD :
Citation:
php test.php Patrick Dupont
et j'obtiens :
Citation:
sans fonction ::: 1er Paramètre : Patrick
2e Paramètre : Dupont
Si je l'exécute dans un navigateur
et j'obtiens la même chose :
Citation:
sans fonction ::: 1er Paramètre : Nathalie
2e Paramètre : Boupont
J'ai voulu mettre dans une fonction pour diminuer le code et l'utiliser dans les autres fichiers.
Voici ma solution qui marche aussi :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| function getparametersArguments($argvArry = NULL, $paramArry = NULL){
if (PHP_SAPI === 'cli') {
$firstName = $argvArry[0];
$lastName = $argvArry[1];
}
else {
$firstName = $paramArry[0];
$lastName = $paramArry[1];
}
return PHP_EOL . 'avec une fonction : 1er Paramètre : ' . $firstName . PHP_EOL . ' 2e Paramètre : ' . $lastName;
}
if (isset($argv[1])) {
$argvArry = [
$argv[1], $argv[2],
];
echo PHP_EOL . getparametersArguments($argvArry, $paramArry = NULL);
}
else {
$paramArry = [
$_GET['firstName'], $_GET['lastName'],
];
echo PHP_EOL . getparametersArguments($argvArry = NULL, $paramArry);
} |
Mais comme vous voyez, c'est encore plus long que la 1re version.:oops:
Est-ce que vous pouvez m'aider pour faire une fonction plus épurée et le faire autrement.:roll:
Merci