Sunucu Kullanılabilir Port Kontrol Sınıfı

<?php
class porttara {
var $liste=["80||HTTP","443||SSL","2083||CPanelSSL","2082||CPanel","2087||WHMSSL","2086||WHM","2096||WebMailSSL","2095||WebMail","2077||Webdisk","2078||WebdiskSSL","8443||PleskSSL","8880||Plesk","21||FTP","990||FTPs","22||SFTP","2222||SFTPShare","25||SMTP","26||SMTP","587||SMTP","465||SMTPSSL","110||POP3","995||POP3SSL","143||IMAP","993||IMAPSSL","3306||MySQL","1433||MSSQL","5432||PostgreSQLServer","53||DomainNameServer","9998||PleskWebmail","9001||DotNetPanel"];
	var $host="127.0.0.1";
	var	$sonuc=[];
	public function tara() {
		$this->liste=array_unique($this->liste);
		foreach($this->liste as $liste){
			$parca=explode("||",$liste);
			if(count($parca) == 2) {
				$sc=socket_create (AF_INET, SOCK_STREAM, getprotobyname("TCP"));
				if(@socket_connect($sc,$this->host,$parca[0])){
					$this->sonuc[]=$parca[0]."||<b style='color:green'>Açık</b>||".$parca[1];
				}else{
					$this->sonuc[]=$parca[0]."||<i style='color:red'>Kapalı</i>||".$parca[1];
				}
			}
		}
	}
}
$tara=new porttara;
$tara->host="127.0.0.1";
$tara->tara();
print_r($tara->sonuc);
?>

Çıktısı

Array
(
    [0] => 80||Açık||HTTP
    [1] => 443||Kapalı||SSL
    [2] => 2083||Kapalı||CPanelSSL
    [3] => 2082||Kapalı||CPanel
    [4] => 2087||Kapalı||WHMSSL
    [5] => 2086||Kapalı||WHM
    [6] => 2096||Kapalı||WebMailSSL
    [7] => 2095||Kapalı||WebMail
    [8] => 2077||Kapalı||Webdisk
    [9] => 2078||Kapalı||WebdiskSSL
    [10] => 8443||Kapalı||PleskSSL
    [11] => 8880||Kapalı||Plesk
    [12] => 21||Kapalı||FTP
    [13] => 990||Kapalı||FTPs
    [14] => 22||Kapalı||SFTP
    [15] => 2222||Kapalı||SFTPShare
    [16] => 25||Kapalı||SMTP
    [17] => 26||Kapalı||SMTP
    [18] => 587||Kapalı||SMTP
    [19] => 465||Kapalı||SMTPSSL
    [20] => 110||Kapalı||POP3
    [21] => 995||Kapalı||POP3SSL
    [22] => 143||Kapalı||IMAP
    [23] => 993||Kapalı||IMAPSSL
    [24] => 3306||Açık||MySQL
    [25] => 1433||Kapalı||MSSQL
    [26] => 5432||Kapalı||PostgreSQLServer
    [27] => 53||Kapalı||DomainNameServer
    [28] => 9998||Kapalı||PleskWebmail
    [29] => 9001||Kapalı||DotNetPanel
)