gpt4 book ai didi

php - 从 URL 中删除 fbclid(如果存在)

转载 作者:行者123 更新时间:2023-12-02 17:00:47 25 4
gpt4 key购买 nike

我有示例代码:

$var = $_GET['myurl'];

我的示例网址

https://mydomain/sample/value-2019?fbclid=xxxxxxxxxxxx

or

https://mydomain/sample/value-2019?date=2018&fbclid=xxxxxxxxxxxx


or

https://mydomain/sample/value-2019?fbclid=xxxxxxxxxxxx&id=10
or

https://mydomain/sample/value-2019?x=xyz


or etc...

$_GET['myurl'] - 是我的实际 URL 地址。

我需要检查 $ var 参数是否为 fbclid - 如果是,则将其删除。

例如:

来自

$var = 'https://mydomain/sample/value-2019?date=2018&fbclid=xxxxxxxxxxxx'

我想要:

$var = 'https://mydomain/sample/value-2019?date=2018'

重要提示:fbclid 参数并不总是出现,所以我首先需要检查它是否在我的 URL 中可用。

怎么做?

最佳答案

<?php

$urls = array(
"https://mydomain/sample/value-2019?fbclid=xxxxxxxxxxxx",
"https://mydomain/sample/value-2019?date=2018&fbclid=xxxxxxxxxxxx",
"https://mydomain/sample/value-2019?fbclid=xxxxxxxxxxxx&id=10",
"https://mydomain/sample/value-2019?x=xyz"
);

function strip_fbclid($url) {
$patterns = array(
'/(\?|&)fbclid=[^&]*$/' => '',
'/\?fbclid=[^&]*&/' => '?',
'/&fbclid=[^&]*&/' => '&'
);

$search = array_keys($patterns);
$replace = array_values($patterns);

return preg_replace($search, $replace, $url);
}

foreach($urls as $url) {
echo "URL: " . $url . "\n";
echo "REP: " . strip_fbclid($url) . "\n";
}

如果我们不在每次运行该函数时都定义和解析模式/搜索/替换 url,此代码可以变得更高效,但这应该可行吗?

关于php - 从 URL 中删除 fbclid(如果存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54303170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com