Exec en PHP

Résolu
kaotic13 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   -  
kaotic13 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'aimerais exécuter via PHP sur mon serveur linux :
echo exec('cat /fichier/meslog.log'); pour afficher mes logs, sauf que sa affiche que ma dernière ligne.. J'aimerais donc afficher les 30 dernières lignes..

Merci de votre compréhension..



A voir également:

2 réponses

ElementW Messages postés 4814 Date d'inscription   Statut Contributeur Dernière intervention   1 223
 
La doc de exec dit qu'un deuxième paramètre "array &$output" doit être passé pour récupérer les lignes (dans un array).
"J'aimerais donc afficher les 30 dernières lignes.. ": pour avoir les 30 dernières lignes, n'utilise pas
cat
mais
tail -n 30 /fichier/meslog.log
, où "-n 30" spécifie "seulement les 30 dernières lignes".
0
kaotic13 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   15
 
Je te remercie de cette réponse, mais ayant testé ça ne marche pas, juste la dernière ligne s'affiche.. Je ne comprend vraiment plus rien..
0
ElementW Messages postés 4814 Date d'inscription   Statut Contributeur Dernière intervention   1 223
 
<pre><?php
$lines = array();
exec("tail -n 30 /fichier/meslog.log", $lines);
print_r($lines);
?></pre>
$lines est un tableau contenant les lignes.
Assurez vous bien d'avoir les droits de lecture, sinon il n'en ressortira rien.
0
kaotic13 Messages postés 174 Date d'inscription   Statut Membre Dernière intervention   15
 
J'ai effectivement essayer sa avant que vous le mettez, j'avais oublier le array();
Je vous remercie je mais en résolu :)
0