【发布时间】:2012-05-03 22:49:49
【问题描述】:
我正在尝试检查是否存在 gravatar。当我尝试前面问题中推荐的方法时,我收到一个错误“警告:get_headers() [function.get-headers]:此函数只能用于 URLs”有人看到这个或看到我的代码中的错误吗? PS 我不想为 gravatar 指定默认图像,因为如果没有 gravatar 存在,则可能存在多个默认可能性。
另外,我发现一个错误的引用可能与我的 ini 文件有关,我认为我的主机不允许我访问该文件。如果是这样,是否有替代 getheaders 的方法?非常感谢。
$email = $_SESSION['email'];
$email= "person@gmail.com"; //for testing
$gravemail = md5( strtolower( trim( $email ) ) );
$gravsrc = "http://www.gravatar.com/avatar/".$gravemail;
$gravcheck = "http://www.gravatar.com/avatar/".$gravemail."?d=404";
$response = get_headers('$gravcheck');
echo $response;
exit;
if ($response != "404 Not Found"..or whatever based on response above){
$img = $gravsrc;
}
【问题讨论】:
-
松开$gravcheck 周围的撇号,否则它只是一个包含“$gravcheck”的字符串,而不是变量的内容:
get_headers($gravcheck); -
非常感谢这次捕获..它导致了错误。