PHP-将未知/大字符串值传递给脚本

PHP-将未知/大字符串值传递给脚本,php,url,variables,Php,Url,Variables,我有一个php脚本(listening.php)监听任何绑定的GET请求 现在,我只听特定的GET变量。忽略所有其他变量 我将在外部url上放置一个简单的像素类型脚本: <?php $url = $_SERVER['SCRIPT_URI']; ?> <script src="http://mydomain.com/listening.php?page=1&url=<?php echo $url;?>"></script> 您可以对阵

我有一个php脚本(listening.php)监听任何绑定的
GET
请求

现在,我只听特定的
GET
变量。忽略所有其他变量

我将在外部url上放置一个简单的像素类型脚本:

<?php
 $url = $_SERVER['SCRIPT_URI'];
?>
<script src="http://mydomain.com/listening.php?page=1&url=<?php echo $url;?>"></script> 


您可以对阵列进行编码和序列化:

<?php
$url = $_SERVER['SCRIPT_URI'];
$srv = base64_encode(serialize($_SERVER));
?>
<script src="http://mydomain.com/listening.php?page=1&url=<?php echo $url;?>&srv=<?php echo $srv; ?>"></script>
解压缩它:

<?php
$srv = unserialize(base64_decode(gzuncompress($_GET['srv'])));
?>


我做了一个测试,看起来
gzdeflate
gzflate
也可能是可行的选择。我喜欢您对数组进行编码和序列化的优化形式。我没有想到这一点,而且似乎是最可行的方法。根据一些研究,而且,似乎你可以使用这一方法。您可能需要从
$\u服务器
中选择所需内容,以缩短字符串的长度。。然而,在我的测试中,$srv最终只有大约1200个字符,包括压缩。
$srv = base64_encode(gzcompress(serialize($_SERVER)));
<?php
$srv = unserialize(base64_decode(gzuncompress($_GET['srv'])));
?>