ผมใช้ function fsockopen() to connect to router via serial to ethernet converter
โดยปกติแล้ว ถ้าเรา connect หา router โดยใช้โปรแกรมจำพวก hyper terminal ทั่วไป หลักจาก connect ไปแล้ว router ก็จะ return อะไรต่อมิอะไรกลับคือมามากมาย เพื่อที่จะให้เรา configulation
แต่ที่ผมกำลังทำอยู่นี่คือ การ connect ผ่านทาง browser โดยใช้ภาษา php ขั้นแรกนั้นผมต้องการที่จะติดต่อไปยัง router ให้ได้เหมือนกับการใช้ hyper terminal เสียก่อน แล้วจึงค่อยทำระบบส่วนอื่นต่อไป โดยใช้โปรแกรมดังนี้
$connection = fsockopen ("10.1.0.1", 2000);
while(!feof($connection)){
echo fgets($connection);
}
fclose ($connection);
ปัญหาคือว่า โปรแกรมจะทำงานใน while loop จนกระทั่งถึง maximum execution time ก็จะหยุดทำงาน
ช่วยอธิบายด้วยครับ แต่ผมของเปลียนจาก fsockopen() เป็น fopen() เพื่อทดลองการอ่านค่าจาก text file ธรรมดา ปรากฏว่าไม่ติด while loop ผมทำผิดตรงไหนรึป่าวครับ หรือมีอะไรแนะนำ ก็โปรดเถิดครับ ผมไม่รู้จะถามตรงไหน
มีภาพแสดง output ให้ดูด้วยครับ
error message: Maximum execution time of 20 seconds exceeded in