Probléme d'affichage de la fonction exec()php

ridafive Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
First_Pretender Messages postés 147 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous, j'ai un probléme concernant l'affichage du résultat de la fonction exec (ping"....") en php.
le probléme c'est que le résultat renvoyé est concaténé ,moi je voudrais savoir comment je peut faire pour avoir un bonne affichage et si possible dans un tableau est pas concaténé.
illustration:
voici mon code php:

<?php
function pinger()
{
$ip = '172.17.0.23';
exec('ping '.$ip,$a);
print_r($a);
}
?>

voici le resultat:

Array ( [0] => [1] => Envoi d'une requˆte 'ping' sur 172.17.0.23 avec 32 octets de donn‚esÿ: [2] => [3] => R‚ponse de 172.17.0.23ÿ: octets=32 temps=1 ms TTL=255 [4] => R‚ponse de 172.17.0.23ÿ: octets=32 temps=1 ms TTL=255 [5] => R‚ponse de 172.17.0.23ÿ: octets=32 temps=1 ms TTL=255 [6] => R‚ponse de 172.17.0.23ÿ: octets=32 temps=1 ms TTL=255 [7] => [8] => Statistiques Ping pour 172.17.0.23: [9] => Paquetsÿ: envoy‚s = 4, re‡us = 4, perdus = 0 (perte 0%), [10] => Dur‚e approximative des boucles en millisecondes : [11] => Minimum = 1ms, Maximum = 1ms, Moyenne = 1ms )

ici, sa se voit pas trop mais le resultat est concaténé, y'aurait il moyen de faire en sorte que le resultat s'affiche correctement ,qui peut m'aider svp, merci
A voir également:

3 réponses

kij_82 Messages postés 4089 Date d'inscription   Statut Contributeur Dernière intervention   857
 
Si tu entends pas concaténé le fait que le résultat soit un tableau et que toi tu souhaite afficher ligne par ligne, dans ce cas il te suffit de faire une boucle sur ton résultat comme suit :
for ($i=0; $i< count($a); $i++ )
  echo $a[i];


et le tour est joué. Après j'ai peut etre mal compris ta question et dans ce cas peux tu la reformuler.

0
Felysk
 
echo "<pre>";
print_r($var);
echo "</pre>";
0
First_Pretender Messages postés 147 Date d'inscription   Statut Membre Dernière intervention   27
 
Pour répondre deux ans et demi après... çà servira peut-être à quelqu'un :

<?php
header('Content-Type: text/html; charset=ibm850');
$computername = "MehrunesDagon";
$ip = gethostbyname($computername);
exec("ping ".$ip." -n 3 -w 90 && exit", $output);
$maxrow= count($output);
for ($i=1; $i < $maxrow; $i++)
{ echo "$output[$i] <BR />";
}
?>

Le charset est bien utile aussi...
0