我正在使用stream_get_line将一些php 输出存储在一个变量中,而我正在通过fsockopen 运行一个telnet 会话。
但是,我的第二台服务器没有运行 PHP5,因此无法使用stream_get_line。PHP 4.3 有什么替代方案吗?
我听说fgets几乎相同,但我似乎并没有让它像stream_get_line一样工作。
代码:
...
# opening connection
$fp = @fsockopen($ip, 23, $errno, $errstr, 8);
# loggin in
fputs($fp, "$user\r");
usleep(250000);
fputs($fp, "$password\r");
# getting information
fputs($fp, "show info\n");
usleep(250000);
fputs($fp, "show info 2\n");
usleep(250000);
fputs($fp, "show info 3\n");
usleep(250000);
fputs($fp, "show info 4\n");
usleep(250000);
fputs($fp, "?\n");
$content = stream_get_line($fp, 0, "?");
$contentvalues = array(
1 => substr($content, 130, 3),
2 => substr($content, 180, 3)
);
fclose($fp);
...
(我将输出的特定部分存储在 $contentvalues 变量中。)