Page 1 sur 1

paramètre dans la fonction system()

Posté : 29 oct. 2006, 18:35
par newb
Salut,

Je cherche a passer un fichier en parametre à system() (ou passthru() / exec(), j'avoue n'avoir pas bien saisi les diferences!)
$cmd = system('ls -l $fichier') ;
mais ca ne fonctionne pas..

Comment faire ?
Merci

Posté : 29 oct. 2006, 18:45
par newb
j'ai trouvé seul ;)
$cmd = "ls -l $fichier';
system ($cmd,$retval)
cool :)

Posté : 29 oct. 2006, 20:04
par Ryle
Pour l'explication (et la correction du code que tu donnes si d'autres passaient par là) le problème vient de tes apostrophes entre lesquelles les variables php ne sont pas interprétées. Il te faut par conséquent sortir ta variable de la chaine ou utiliser des guillemets :
$var = toto;
echo "Valeur : $var"; // affiche "Valeur : toto"
echo 'Valeur : $var'; // affiche "Valeur : $var"
echo 'Valeur : '.$var; // affiche "Valeur : toto"

Posté : 30 oct. 2006, 03:58
par Ajoloca
Bonsoir,
Et j'ajouterais
$cmd = "ls -l $fichier';
system ($cmd,$retval)
ça donne
Parse error: syntax error, unexpected $end in /chemin/fichier.php on line n