Commande DOS en php

ti-krus -  
mpmp93 Messages postés 7217 Statut Membre -
Bonjour,

Je voudrais savoir s'il y est possible de lancer des commande DOS tels que dir /b | find /v /c "" qui permet de compter le nombre de repertoire en php et si oui peut t'on recupéré sa valeur dans une variable?

Merci



A voir également:

4 réponses

Calli
 
Ou alors tu passes pas par une commande DOS...

http://www.asp-php.net/tutorial/asp-php/directory.php

Petit rappel en passant: ça permettra bien sur l'affichage des dossiers sur le serveur, pas du client
0
Holomark Messages postés 16 Statut Membre 2
 
Pour exécuter des programmes externes, et en récupérer la sortie, il y a exec() ;
https://www.php.net/manual/fr/function.exec.php

Il reste qu'on préfèrera faire ce genre de manipulations avec les fonctions PHP dédiées, lesquelles couvrent assez bien les besoins courants, et sûrement plus. Pour l'exemple que tu donne ce serai scandir() :
https://www.php.net/manual/fr/function.scandir.php
Et beaucoup d'autres, lesquelles sont trés bien documentées sur le même site.
0
jisisv Messages postés 3678 Statut Modérateur 934
 
Effectuer des exec est FORTEMENT déconseillé.
Ta commande DO$-Win-machinchose ne sera pas portable et de plus , pour autant que je me rappelle le DOS-nonsense, se programmme facilement avec les fonctions "natives" de PHP.
exe c'est bon pour les programmes /bibliothèques propriétaires sans API.
Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
0
mpmp93 Messages postés 7217 Statut Membre 1 340
 
Bonjour,

Totalement déconseillé.

Il y a une commande en php permettant de voir les fichiers et de les compter. Exemple:

$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
echo $entry."\n";
}
$d->close();

Pas besoin de DOS. De plus, sur les serveurs en production, DOS existe pas!

A+
0