1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
utmextractor.php
См. документацию.
1<?php
2
3namespace Bitrix\Seo\Analytics\Services\Helpers\Yandex;
4
5final class UtmExtractor
6{
7 private array $utm = [];
8
9 public function __construct(
10 private readonly string $url,
11 )
12 {
13 $this->extract();
14 }
15
16 private function extract(): void
17 {
18 $allowedKeys = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_content'];
19 $parts = parse_url($this->url);
20
21 if (isset($parts['query']))
22 {
23 parse_str($parts['query'], $query);
24 $this->utm = array_intersect_key($query, array_flip($allowedKeys));
25 }
26 }
27
28 public function getUtmSource(): ?string
29 {
30 return $this->utm['utm_source'] ?? null;
31 }
32
33 public function getUtmMedium(): ?string
34 {
35 return $this->utm['utm_medium'] ?? null;
36 }
37
38 public function getUtmCampaign(): ?string
39 {
40 return $this->utm['utm_campaign'] ?? null;
41 }
42
43 public function getUtmContent(): ?string
44 {
45 return $this->utm['utm_content'] ?? null;
46 }
47}
__construct(private readonly string $url,)
Определения utmextractor.php:9
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$query
Определения get_search.php:11
$url
Определения iframe.php:7