Aller au contenu

loufoque

Webmaster Régulier
  • Compteur de contenus

    54
  • Inscrit(e) le

  • Dernière visite

Messages postés par loufoque

  1. Gecko supporte presque tout SVG nativement, ce qui bien plus puissant que d'utiliser un plug-in.

    Ensuite il n'est possible d'implémenter SVG totalement que dans un navigateur conçu autour des graphiques vectoriels, et ce ne sera pas le cas avant Gecko 1.9/Firefox 1.5 avec l'utilisation de cairo.

    Souvent les solutions qui fonctionnent avec le lecteur Adobe ne fonctionnent pas avec Gecko parce qu'elles font utilisation de Javascript non standard.

    sleep !

    je viens de tester flush(); avec l'exemple donné plus haut, et chez moi, ça ne marche pa du tout ! Ca attend les 15 secondes pour m'afficher le tout !

    PHP, dans certaines versions ou configurations, active automatiquement une bufférisation.

    Il faut donc faire _AT_ob_end_clean(); au début du script.

  2. par exemple, pour récupérer dans un tableau de chaînes les données lisibles sur plusieurs flux :

    $buffer = array();
    $remove = array();
    $streams = array($sd1, $sd2, $sd3);
    $timeout = NULL; // on peut mettre un timeout en secondes
    while(true)
    {
       $r = array_diff($streams, $remove);
       if(!$r) break;
       $chg = stream_select($r, $w = NULL, $e = NULL, $timeout);
       if($chg === false)
       {
           // erreur, throw new Exception par exemple
       }
       if($chg > 0)
       {
           foreach($r as $sd)
           {
                $data = fread($sd, 4096);
                if($data === false)
                {
                     // erreur
                }
                if($data == '')
                {
                     $remove[] = $sd;
                }
                if(!isset($buffer[intval($sd)]))
                {
                    $buffer[intval($sd)] = $data;
                }
                else
                {
                    $buffer[intval($sd)] .= $data;
                }
           }
       }
       else
       {
           // time out (si fourni)
       }
    }

×
×
  • Créer...