Maison >développement back-end >tutoriel php > php获取GET模式传入的全部变量名称与值

php获取GET模式传入的全部变量名称与值

WBOY
WBOYoriginal
2016-06-13 12:54:41866parcourir

php获取GET方式传入的全部变量名称与值

前言

这篇博客的需求是我需要将一个http请求例如127.0.0.1?a=123&b=456&c=789将所有的get参数取出来拼串到test.com后面,也就是最后理想的uri应该是test.com?a=123&b=456&c=789

两种方法可以实现,建议做之前先google,我就是没有google导致返工


$_SERVER["QUERY_STRING"]


简介

这是最简单的方法,可是大部分人可能不会太熟悉这个服务器变量,解释一下

$_SERVER["QUERY_STRING"] : 查询的字符串

代码

$base = "test.com";
$str = $_SERVER["QUERY_STRING"];
$uri = $base.$str;
echo $uri;


效果




$_GET数组for循环拼串


思路

大部分人遇到这种需求第一反应都应该是for循环GET数组,自己拼串吧,写个实现代码共享一下


代码

$str = "test.com?";
$count = count($_GET);
$i = 0;

foreach ($_GET as $key => $value) {
    if ($i == $count - 1) {
        $str .= $key . "=" . $value;
    } else {
        $str .= $key . "=" . $value . "&";
    }
    $i ++;
}

echo $str;

效果




比较

虽然效果相同,但是get参数多时,for循环的效率肯定低,所以用php写代码的时候尽量少自己造轮子,所以我更喜欢c,因此可以多动脑子,唉,php是傻瓜用的语言,不过确实方便!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn