我正在尝试获取某个域的过期日期/注册日期,但最终会得到一个非常意外的结果,我在数组中得到3个具有相同值的元素。
$domain = trim($domain); // ex google.com
$url = "http://who.is/whois/".$domain;
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_exec($ch);
curl_close($ch);
$result = trim($result);
$result = preg_match('/(<span data-bind-domain="expiration_date" style="visibility: visible;">(.*?)<\/span>){1}/', $result, $matches);
var_dump($matches);
//输出
array(3) {
[0]=> string(95) "September 14, 2020"
[1]=> string(95) "September 14, 2020"
[2]=> string(18) "September 14, 2020"
}
我试图获取并存入一个变量的过期日期和另一个变量注册日期+前两个数组在只有18个字符串时发送95个字符串。
我错了什么
ADDED
$result = preg_match('#<td><span data-bind-domain="expiration_date" style="visibility: visible;">(.*?)</span></td>#', $result, $matches);
而不是
$result = preg_match('/(<span data-bind-domain="expiration_date" style="visibility: visible;">(.*?)<\/span>){1}/', $result, $matches);
现在输出非常奇怪,而不是说它是什么类型的变量,第一个日期。 2020年9月14日,不说是字符串还是数组。
答案 0 :(得分:1)
检查一下:
http://www.nott.org/blog/php-whois-script.html
一些注册商提供API,这将使您的工作更轻松:http://opensrs.com/site/integration/api