ホームページ >バックエンド開発 >PHPチュートリアル >fsockopen() 関数はポート スキャナーを作成します
1. はじめに
この記事では、fsockopen() 関数を使用して、単純な関数を持つポート スキャナーを作成します。
2. 主要なテクノロジー
この例のポート番号は固定されており、接続が成功した場合は fsockopen() 関数を使用して接続されます。
コアコードは次のとおりです:
foreach ($port as $key => $value) { echo '<tr>'; echo '<td>' . $key . '</td>'; echo '<td>' . $value . '</td>'; echo '<td>' . $msg[$key] . '</td>'; //$errno 和 $errstr 在这里基本用不上,只是为了设置 timeout,防止请求超时 $fp = @fsockopen($ip, $value, $errno, $errstr, 1);//如果主机(hostname)不可访问,将会抛出一个警告级别(E_WARNING)的错误提示。所有需要加@ $result = $fp ? '<span>开启</span>' : '<span>关闭</span>'; echo '<td>' . $result . '</td>'; echo '</tr>'; }
3. コードは次のとおりです
nbsp;html> <meta> <title>端口扫描</title> <style> td{ padding:10px; border-bottom:1px solid #eee; } </style>
id | 端口号 | 服务 | 开启状态 |
' . $key . ' | '; echo '' . $value . ' | '; echo '' . $msg[$key] . ' | '; //$errno 和 $errstr 在这里基本用不上,只是为了设置 timeout,防止请求超时 $fp = @fsockopen($ip, $value, $errno, $errstr, 1);//如果主机(hostname)不可访问,将会抛出一个警告级别(E_WARNING)的错误提示。所有需要加@ $result = $fp ? '开启' : '关闭'; echo '' . $result . ' | '; echo '
4. ホスト名に基づいて接続を作成し、リソースを返します。オブジェクトが正常に実行され、失敗した場合は false が返されます。ホストが利用できない場合は、警告がスローされます
詳細については、http://php.net/manual/en/function.fsockopen.php
を参照してください。
以上がfsockopen() 関数はポート スキャナーを作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。