Comment mettre le pointeur à la place souhaitée dans un flux en utilisant PHP?
-
22-07-2019 - |
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?
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