我正在尝试将当前页面标题存储在 PHP 变量中,但是当我尝试获取页面标题时服务器挂起。
页面标题():
function page_title($url) {
$fp = file_get_contents($url);
if (!$fp)
return null;
$res = preg_match("/<title>(.*)<\/title>/siU", $fp, $title_matches);
if (!$res)
return null;
$title = preg_replace('/\bReactionDB\b/i',' ', $title_matches[1]);
$title = preg_replace('/\|/', '', $title);
$title = trim($title);
return $title;
}
curPageURL():
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
page_title();
服务器在放弃前尝试执行 10-20 秒时挂起。
$domene = curPageURL();
$pagetitle = page_title($domene);
我已经测试过page_title();
它是否有效。如果我输入一个外部 URL,它会毫无问题地显示页面的页面标题,但我需要它来获取当前页面/url 的页面标题。
我还测试了它的输出,curPageURL();
它确实获取了当前网页的完整 URL。
如果有解决方案,它必须包括将获取的页面标题存储到 PHP 变量 ( $pagetitle
) 中的能力。