PHP实现获取搜索引擎关键字来源的完整函数

2 下载量 39 浏览量 更新于2024-08-30 收藏 59KB PDF 举报
本文档主要介绍了如何在PHP编程中实现获取搜索引擎关键字来源的功能,以便在用户下单时追踪其来源渠道。由于客户的需求是针对商品销售系统,需要在客服不在线的情况下也能了解订单来源,传统的客服工具和网站统计不够全面,因此开发者提出了一种解决方案,即通过编写自定义函数来解析HTTP_REFERER头信息中的关键词。 函数`get_keyword()`的核心逻辑如下: 1. 首先,它接受两个参数:一个是可能包含搜索引擎关键字的URL `$url`,另一个是关键字的起始位置字符串 `$kw_start`。这个函数的作用是在URL中查找指定的搜索引擎域名(如`google.com`,`baidu.com`等),找到后截取关键字部分。 2. 函数首先使用`stripos()`函数定位 `$kw_start` 的位置,然后从该位置开始截取URL,直到遇到'&'字符(通常出现在查询参数之后)。如果找到了'&',则进一步处理后续的查询参数;如果没有找到,直接返回剩余URL作为关键字。 3. 接下来,定义了多个搜索引擎的域名字符串,并使用正则表达式`preg_match()`来检查URL中是否包含这些搜索引擎的标识。这里使用了`$google`, `$baidu`, `$yahoo`, `$sogou`, `$soso`, `$bing`, 和 `$youdao` 来分别匹配Google、百度、雅虎、搜狗、搜搜、必应和有道的搜索结果页面。 4. 如果某个搜索引擎的正则表达式匹配成功(返回值非零),则说明用户可能是通过该搜索引擎到达网站的。函数返回找到的关键字,用于后续分析。 总结来说,这个PHP函数通过解析HTTP_REFERER头信息和特定搜索引擎的URL模式,为电商网站提供了获取用户订单来源关键字的能力,尤其在客服休息时间可以弥补传统工具的不足。在实际应用中,可以根据需要扩展到其他搜索引擎或优化匹配规则以提高准确性。