这里是文章模块栏目内容页
PHP用fsockopen 函数实现模拟ping操作

本文主要描述,用php代码模拟ping 服务器的ip和端口号,检测msyql服务器或其他tcp服务器是否运行的方法:

    /**
     * 通过fsockopen 检测ip上的某个端口是否可以连接
     * @param type $domain
     * @param type $port
     * @return type >0 表示连接耗时 否则连接失败。
     */
    private function pingDomain($domain , $port){
            $starttime = microtime(true);
            $file      = fsockopen ($domain, $port, $errno, $errstr, 10);
            $stoptime  = microtime(true);
            $status    = 0;
            if (!$file) {
                $status = 0;  // Site is down
            }else {
                fclose($file);
                $status = floor(($stoptime - $starttime) * 1000);                
            }
            return $status;
   }


那么用这个函数,模拟ping 一下mysql数据库是否运行并监听在 3306端口。

return $this->pingDomain('127.0.0.1',  3306);


好了,本文内容全部结束,感谢您的阅读。