阅读(1444) (9)

is_agent()

2017-06-22 14:26:09 更新

作用:判断当前是否为客户端请求。 语法: boolean is_agent([string $agent_info]) 参数:

  • $agent_info 客户端信息,如客户端名称、类型等。

返回值:

  • 成功则返回 true,失败则返回 false

说明: 在 ModPHP 1.5.2 之后,$agent_info 参数还可以设置为 true,来判断是否为标准的客户端,即提供了 User-Agent 请求头的客户端,像 file_get_contents() 这些内置的函数,它们由于没有提交 User-Agent 请求头,而会返回 false

也就是说,在 1.5.2 之后,ModPHP 能够判断四种来自客户端的请求,即普通浏览器的请求、AJAX 请求、CURL 请求以及 file_get_contents() 这些 PHP 内置的 HTTP 请求。至于 CURL 能够模拟浏览器的特性,这就要另当别论了。

另外需要注意的是 is_agent() 只用来判断由客户端发起而运行程序的请求,对于在服务器端运行程序,如 Socket 服务器,is_agent() 始终返回 false

示例:

<?php
if(is_agent()){
    if(is_agent('Chrome')){
        echo '你正通过 Google Chrome 浏览器访问这个页面';
    }else{
        echo '你正在通过某个客户端访问这个页面';
    }
}else{
    echo '当然程序运行在控制台中';
}