帮我实现一个检测功能随机获取变量$j46里的域名前判断是否可以在微信和QQ内访问如果可以则获取不可以则提示无可用域名$j46 = $confj46;$j47 = $confj47;if $j47 == 1 $domains = explode $j46;$chosen_domain = $domainsarray_rand$domains; 随机获取$j46里的一个值if !isset$_COO
以下是实现代码:
$j46 = $conf['j46']; $j47 = $conf['j47'];
if ($j47 == 1) { $domains = explode(",", $j46); $random_domain = $domains[array_rand($domains)];
$wechat_url = "weixin://dl/business/?ticket=";
$qq_url = "mqqapi://forward/url?url_prefix=";
$check_wechat = $wechat_url . urlencode("http://" . $random_domain);
$check_qq = $qq_url . urlencode("http://" . $random_domain);
$headers = get_headers($check_wechat);
$wechat_status = strpos($headers[0], "302");
$headers = get_headers($check_qq);
$qq_status = strpos($headers[0], "302");
if ($wechat_status !== false && $qq_status !== false) {
// 可以访问,输出随机域名
echo "可用的域名为:" . $random_domain;
} else {
// 不可访问,输出提示信息
echo "无可用域名";
}
} else { // j47不为1,不需要检测 }
解释一下代码:
-
首先获取$j46和$j47的值。
-
判断$j47是否为1,如果不是则不需要检测。
-
将$j46按逗号分隔成数组$domains,并从中随机获取一个值$random_domain。
-
构建微信和QQ的链接,分别存储在$check_wechat和$check_qq中。
-
使用get_headers函数获取链接的HTTP头信息,如果HTTP返回码为302则表示可以访问,否则不可以。
-
判断微信和QQ的访问情况,如果都可以访问则输出随机域名,否则输出提示信息
原文地址: http://www.cveoy.top/t/topic/egLx 著作权归作者所有。请勿转载和采集!