Php 浏览器检测与Zend MVC
我有一个使用Zend MVC框架的PHP应用程序。应用程序的每个请求的入口点都位于/public/index.php中 我有一个Browser类,该类具有检查用户的浏览器是否与应用程序兼容的功能 我的难题是,每次控制器调用都会执行index.php。因此,该文件很可能在同一页面内多次执行,因此重定向成为一个问题。解决循环问题的最佳方法是什么 谢谢你的“困境”,这听起来完全是另一个问题,我真的不会在每次控制器调用时调用index.php。我认为这是你的根本问题。如果必须,我想您可以使用会话跟踪用户对各个页面的调用 但是index.php应该只是一个入口点,任何进一步执行的代码逻辑都应该完全不知道它的存在 关于浏览器检测: 据我所知,目前还没有确定浏览器的ZF组件。有两种方法可以做到这一点。一种是使用Php 浏览器检测与Zend MVC,php,zend-framework,Php,Zend Framework,我有一个使用Zend MVC框架的PHP应用程序。应用程序的每个请求的入口点都位于/public/index.php中 我有一个Browser类,该类具有检查用户的浏览器是否与应用程序兼容的功能 我的难题是,每次控制器调用都会执行index.php。因此,该文件很可能在同一页面内多次执行,因此重定向成为一个问题。解决循环问题的最佳方法是什么 谢谢你的“困境”,这听起来完全是另一个问题,我真的不会在每次控制器调用时调用index.php。我认为这是你的根本问题。如果必须,我想您可以使用会话跟踪用户
$\u SERVER[“HTTP\u User\u Agent”]
基于用户代理字符串检查浏览器
当然,另一种方法是客户端检测。大多数JS库都提供了这样做的方法;正如大多数jQuery用户所知,jQuery已经弃用了它的jQuery.browser
功能,但它们目前仍然可用
但是,如中所述,建议您检查所需的特定功能,以代替客户端浏览器检测。您应该在前端控制器插件中执行此操作。有几种方法是根据您所处的分派流程点调用的 看
$i = 0;
if ($i === 0)
{
// put everything currently in index.php into here
$i++;
}