Question

Actuellement, je réalise un analyseur de données via une connexion Telnet en utilisant PHP. J'ai rencontré un problème: J'ai besoin de mettre un pointeur dans un flux à un endroit précis (pas jusqu'à la fin des données), mais l'utilisation de la fonction fseek () est impossible avec les flux. Dites-moi, s'il vous plaît, comment puis-je résoudre ce problème?

Était-ce utile?

La solution

Cette fonction devrait déplacer votre curseur de flux à l'endroit souhaité:

function moveStreamCursorTo(&$fp, $offset)
{
    for ($i = 0; $i < $offset; $i++)
        fgetc($fp);
}

// Use like this:
$curPos = 459;
$desiredPos = 1345;

moveStreamCursorTo($yourStream, $desiredPos - $curPos);

Veuillez tester ceci et signaler vos résultats.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top