Revision: 72155
Updated Code
at May 22, 2017 18:16 by apphp-snippets
Updated Code
<?php
function whois_query($domain) {
// fix the domain name: $domain = strtolower(trim($domain));
$domain = preg_replace('/^http:\/\//i', '', $domain);
$domain = preg_replace('/^www\./i', '', $domain);
$domain = explode('/', $domain);
$domain = trim($domain[0]);
// split the TLD from domain name
$_domain = explode('.', $domain);
$lst = count($_domain)-1;
$ext = $_domain[$lst];
// You find resources and lists
// like these on wikipedia:
//
// de.wikipedia.org/wiki/Whois
//
$servers = array(
"biz" => "whois.neulevel.biz",
"com" => "whois.internic.net", "us" => "whois.nic.us",
"coop" => "whois.nic.coop", "info" => "whois.nic.info",
"name" => "whois.nic.name", "net" => "whois.internic.net",
"gov" => "whois.nic.gov", "edu" => "whois.internic.net",
"mil" => "rs.internic.net", "int" => "whois.iana.org",
"ac" => "whois.nic.ac", "ae" => "whois.uaenic.ae",
"at" => "whois.ripe.net", "au" => "whois.aunic.net",
"be" => "whois.dns.be", "bg" => "whois.ripe.net",
"br" => "whois.registro.br", "bz" => "whois.belizenic.bz",
"ca" => "whois.cira.ca", "cc" => "whois.nic.cc",
"ch" => "whois.nic.ch", "cl" => "whois.nic.cl",
"cn" => "whois.cnnic.net.cn", "cz" => "whois.nic.cz",
"de" => "whois.nic.de", "fr" => "whois.nic.fr",
"hu" => "whois.nic.hu", "ie" => "whois.domainregistry.ie",
"il" => "whois.isoc.org.il", "in" => "whois.ncst.ernet.in",
"ir" => "whois.nic.ir", "mc" => "whois.ripe.net",
"to" => "whois.tonic.to", "tv" => "whois.tv",
"ru" => "whois.ripn.net", "org" => "whois.pir.org",
"aero" => "whois.information.aero", "nl" => "whois.domain-registry.nl"
);
if (!isset($servers[$ext])){ die('Error: No matching nic server found!'); }
$nic_server = $servers[$ext];
$output = '';
// connect to whois server:
if ($conn = fsockopen ($nic_server, 43)) {
fputs($conn, $domain."\r\n");
while(!feof($conn)) {
$output .= fgets($conn,128);
}
fclose($conn);
}
else {
die('Error: Could not connect to ' . $nic_server . '!');
}
return $output;
}
?>
Revision: 72154
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at May 22, 2017 18:15 by apphp-snippets
Initial Code
<?php
/**
* Calculate the full size of a directory
* @param string $DirectoryPath Directory path
*/
function CalcDirectorySize($DirectoryPath) {
// I reccomend using a normalize_path function here
// to make sure $DirectoryPath contains an ending slash
// To display a good looking size you can use a readable_filesize
// function.
$Size = 0;
$Dir = opendir($DirectoryPath);
if (!$Dir) return -1;
while (($File = readdir($Dir)) !== false) {
// Skip file pointers
if ($File[0] == ) continue;
// Go recursive down, or add the file size
if (is_dir($DirectoryPath . $File)) {
$Size += CalcDirectorySize($DirectoryPath . $File . DIRECTORY_SEPARATOR);
}
else {
$Size += filesize($DirectoryPath . $File);
}
}
closedir($Dir);
return $Size;
}
?>
Initial URL
www.apphp.com/index.php?snippet=php-whois-query
Initial Description
This code allows to perform a query to WhoIs service in PHP.
Initial Title
WhoIs Query in PHP
Initial Tags
php
Initial Language
PHP