我目前有以下代码(到目前为止我可以告诉它)
session_start();
if(!is_array($_SESSION['page'])) {
$_SESSION['page']=array();
}
$_SESSION['page'][]=$_SERVER['REQUEST_URI'];
$entry=reset($_SESSION['page']);
$exit=end($_SESSION['page']);
这是使用PHP完成入口和出口页面跟踪的最佳方法吗?
编辑:
这(来自@ T0xicCode)似乎是一个更好的选择:
session_start();
if(!is_array($_SESSION['page'])) {
$_SESSION['page'] = array('entry' => $_SERVER['REQUEST_URI']);
}
$_SESSION['page']['exit'] = $_SERVER['REQUEST_URI'];
$entry = $_SESSION['page']['entry'];
$exit = $_SESSION['page']['exit'];
答案 0 :(得分:0)
我建议使用google analytics这样的东西,但是如果你想要一个DIY,纯PHP解决方案,那么下面的东西应该可行。它不会跟踪原始解决方案中间的页面。
session_start();
if(!in_array('page', $_SESSION) || !is_array($_SESSION['page'])) {
$_SESSION['page'] = array('entry' => $_SERVER['REQUEST_URI']);
}
$_SESSION['page']['exit'] = $_SERVER['REQUEST_URI'];
$entry = $_SESSION['page']['entry'];
$exit = $_SESSION['page']['exit'];
您还必须确定清除旧会话的频率。如果我在2周后回来,它是一个新的浏览会话,还是旧的继续?