Jump to content

I don't see what is wrong with this array read


KenHorse
 Share

Recommended Posts

    $handle = fopen("/etc/rpt.fifo", "r") or die("Unable to open file!");
       $buffer = trim(fgets($handle));                
       $ary = explode (",", $buffer);  
       $x = $ary[2];
       print $x;
       flush();   
       pclose($handle);

        

When I run it, it reports:

Notice:  Undefined offset: 2 on line 4

This is the line in /etc/rpt.fifo that is being read (there are 4 indices)

20210721153256,1100,TXKEY,89790

The error makes no sense to me but I'm no expert <g>

Edited by KenHorse
Link to comment
Share on other sites

1 hour ago, KenHorse said:

This is the line in /etc/rpt.fifo that is being read (there are 4 indices)

20210721153256,1100,TXKEY,89790

That's great and all, but what is the value of $buffer?

Link to comment
Share on other sites

Yes, I agree and that's why I'm here! It should work but it doesn't.

and yes, I KNOW what's in $buffer as I if I place a print statement after the $buffer assignment, that line shows

 

VERY frustrating, yes

Link to comment
Share on other sites

add var_dump($buffer, $ary); after your call to explode, maybe it'll shed some light on the situation?

Is this code being called multiple times?  Maybe the first time it has the data like you expect, but the second time $buffer is an empty string.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.