src/AppBundle/Controller/BaseOpenCourseController.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace AppBundle\Controller;
use Biz\RefererLog\Service\RefererLogService;
use Symfony\Component\HttpFoundation\Request;
class BaseOpenCourseController extends BaseController
{
protected function createRefererLog(Request $request, $course)
{
$uri = $request->getUri();
$clientIp = $request->getClientIp();
$userAgent = $request->headers->get('user-agent');
$refererUrl = $request->query->get('refererUrl', '');
if (empty($refererUrl)) {
$refererUrl = $request->server->get('HTTP_REFERER');
}
$fields = array(
'targetId' => $course['id'],
'targetType' => 'openCourse',
'refererUrl' => $refererUrl,
'uri' => $uri,
'targetInnerType' => $course['type'],
'ip' => $clientIp,
'userAgent' => $userAgent,
);
$uv = $request->cookies->get('uv');
if (empty($uv)) {
return false;
}
$refererLog = $this->getRefererLogService()->addRefererLog($fields);
$this->updatevisitRefererToken($refererLog, $request, $uv);
return true;
}
protected function updatevisitRefererToken($refererLog, Request $request, $uv)
{
$token = $this->getRefererLogService()->getOrderRefererByUv($uv);
$key = $refererLog['targetType'].'_'.$refererLog['targetId'];
$token['data'][$key] = $refererLog['id'];
$token['expiredTime'] = strtotime(date('Y-m-d').' 23:59:59');
if (empty($token['id'])) {
$token['uv'] = $uv;
$this->getRefererLogService()->createOrderReferer($token);
} else {
$this->getRefererLogService()->updateOrderReferer($token['id'], $token);
}
}
/**
* @return RefererLogService
*/
protected function getRefererLogService()
{
return $this->getBiz()->service('RefererLog:RefererLogService');
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。