php如何获取网址中的参数

如果用网址提交参数,服务器端如何获取下列网址中的参数(id)的值5
http://zhidao.baidu.com/q?id=5

有多少种方法?

比如有一个网址为

http://域名/goods.php?u=59&id=24#pinglun

我想得到这个id值

可以用正则,也可以用php函数解析到数组中

用正则可以这样

preg_match('/id=(\d+)/',$_SERVER["REQUEST_URI"],$m);//$_SERVER 这个表示当前网址url

print_r($m[1]);exit;

或者用parse_url()及parse_str()函数

$cur_q=parse_url($_SERVER["REQUEST_URI"],PHP_URL_QUERY);

parse_str($cur_q,$myArray);

print_r($myArray["id"]);exit;

拓展资料

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

PHP的特性包括:

1. PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。

2. PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,

PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;

PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。

3. PHP支持几乎所有流行的数据库以及操作系统。

4. 最重要的是PHP可以用C、C++进行程序的扩展!

参考资料百度百科 PHP

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-19

有三种方法

1、$GET 全局变量

2、$post 全局变量

3、SERVER["QUERY_STRING"] 方法


现在,大部分网站获取数据都用的get方法,get也因为传输安全而广泛用之。

<form name=form1 action="" method="get">

仅获取地址栏参数对应值,采用以下方法

在q文件中写入

<?PHP
$var = $GET_["id"];
echo $var;
?>

$GET是超级全局变量,可以传入参数来获取值,这样调用的时候就会返回id值。

拓展内容

PHP实现(获取url--地址参数详解):

//获取域名或主机地址
echo $_SERVER['HTTP_HOST']."<br>"; #localhost

//获取网页地址
echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php

//获取网址参数
echo $_SERVER["QUERY_STRING"]."<br>"; #id=5

//获取用户代理
echo $_SERVER['HTTP_REFERER']."<br>";

//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5

//包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5

//只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);

本回答被网友采纳
第2个回答  2015-12-26
全面获取url地址栏参数多种方法:

Php代码
$_SERVER["SERVER_PORT"] //获取端口
$_SERVER['HTTP_HOST'] //获取域名或主机地址 如test.cn 或http://www.test.cn 或2010.test.cn
$_SERVER['SERVER_NAME'] //获取域名或主机地址 注:只是主域名 如 test.cn
$_SERVER["REQUEST_URI"] //获取域名后的详细地址 如:/index.php?id=123 ...
$_SERVER['PHP_SELF'] //获取PHP文件名
$_SERVER["QUERY_STRING"] //获取PHP后的网址参数
$_SERVER['HTTP_REFERER'] //来源网页的详细地址

输出:

Php代码
echo "rewrite: ".$_GET["rewrite"];
echo "<br>SERVER_PORT: ".$_SERVER["SERVER_PORT"];
echo "<br>HTTP_HOST: ".$_SERVER["HTTP_HOST"];
echo "<br>SERVER_NAME: ".$_SERVER["SERVER_NAME"];
echo "<br>REQUEST_URI: ".$_SERVER["REQUEST_URI"];
echo "<br>PHP_SELF: ".$_SERVER["PHP_SELF"];
echo "<br>QUERY_STRING: ".$_SERVER["QUERY_STRING"];
echo "<br>HTTP_REFERER: ".$_SERVER["HTTP_REFERER"];

注意:
PHP中的SERVER_NAME 和HTTP_HOST的区别

地址栏里输入以下网址:

1) http://www.test.cn/ 时
对应的值为:
HTTP_HOST: www.test.cn
SERVER_NAME: test.cn

2) http://blog.test.cn / 时
对应的值为:
HTTP_HOST: blog.test.cn
SERVER_NAME: test.cn

php $_SERVER 属性说明

$_SERVER[ 'PHP_SELF' ] #当前正在执行脚本的文件名,与 document root相关。
$_SERVER[ 'argv' ] #传递给该脚本的参数。
$_SERVER[ 'argc' ] #包含传递给程序的命令行参数的个数(如果运行在命令行模式)。
$_SERVER[ 'GATEWAY_INTERFACE' ] #服务器使用的 CGI 规范的版本。例如,“CGI/ 1.1 ”。
$_SERVER[ 'SERVER_NAME' ] #当前运行脚本所在服务器主机的名称。
$_SERVER[ 'SERVER_SOFTWARE' ] #服务器标识的字串,在响应请求时的头部中给出。
$_SERVER[ 'SERVER_PROTOCOL' ] #请求页面时通信协议的名称和版本。例如,“HTTP/ 1.0 ”。
$_SERVER[ 'REQUEST_METHOD' ] #访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
$_SERVER[ 'QUERY_STRING' ] #查询(query)的字符串。
$_SERVER[ 'DOCUMENT_ROOT' ] #当前运行脚本所在的文档根目录。在服务器配置文件中定义。
$_SERVER[ 'HTTP_ACCEPT' ] #当前请求的 Accept: 头部的内容。
$_SERVER[ 'HTTP_ACCEPT_CHARSET' ] #当前请求的 Accept-Charset: 头部的内容。例如:“iso- 8859 - 1 ,*,utf- 8 ”。
$_SERVER[ 'HTTP_ACCEPT_ENCODING' ] #当前请求的 Accept-Encoding: 头部的内容。例如:“gzip”。
$_SERVER[ 'HTTP_ACCEPT_LANGUAGE' ]# 当前请求的 Accept-Language: 头部的内容。例如:“en”。
$_SERVER[ 'HTTP_CONNECTION' ] #当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。
$_SERVER[ 'HTTP_HOST' ] #当前请求的 Host: 头部的内容。
$_SERVER[ 'HTTP_REFERER' ] #链接到当前页面的前一页面的 URL 地址。
$_SERVER[ 'HTTP_USER_AGENT' ] #当前请求的 User_Agent: 头部的内容。
$_SERVER[ 'HTTPS' ] — 如果通过https访问,则被设为一个非空的值(on),否则返回off
$_SERVER[ 'REMOTE_ADDR' ] #正在浏览当前页面用户的 IP 地址。
$_SERVER[ 'REMOTE_HOST' ] #正在浏览当前页面用户的主机名。
$_SERVER[ 'REMOTE_PORT' ] #用户连接到服务器时所使用的端口。
$_SERVER[ 'SCRIPT_FILENAME' ] #当前执行脚本的绝对路径名。
$_SERVER[ 'SERVER_ADMIN' ] #管理员信息
$_SERVER[ 'SERVER_PORT' ] #服务器所使用的端口
$_SERVER[ 'SERVER_SIGNATURE' ] #包含服务器版本和虚拟主机名的字符串。
$_SERVER[ 'PATH_TRANSLATED' ] #当前脚本所在文件系统(不是文档根目录)的基本路径。
$_SERVER[ 'SCRIPT_NAME' ] #包含当前脚本的路径。这在页面需要指向自己时非常有用。
$_SERVER[ 'REQUEST_URI' ] #访问此页面所需的 URI。例如,“/index.html”。
$_SERVER[ 'PHP_AUTH_USER' ] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。
$_SERVER[ 'PHP_AUTH_PW' ] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。
$_SERVER[ 'AUTH_TYPE' ] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。
第3个回答  2010-03-08
用$_GET[]方法啊,当你需要从一个页面向另一个页面传值的时候,多数都是用这个传值方法。我觉得ID传值一般都要用$_GET[]方法吧。和他相似的方法就是$_POST[]方法,$_POST[]方法更安全一些,因为你提交的信息不会在地址栏显示,比如你做一个登陆页面,方法用$_GET就会发现登陆后页面的地址栏会出现:username=33ett33;userpwd=1111111;这样你的用户名密码都让人家知道了。但是$get方法也有他的好处,比如<form action="a.php?update&id=1" method="POST"> 这个id就是 GET方式的。通过浏览器传送不重要的信息就要用到$_GET[]变量。使用什么方法会在表单添加的时候选择,比如<form name=form1 action="" method="get">这里的get就是选择$_GET[]方法,如果是post就是选择的$_POST[]方法。本回答被提问者采纳
第4个回答  2010-03-08
$id=$_GET["id"]

$_GET 变量

$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。

$_GET 变量用于收集来自 method="get" 的表单中的值。从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符)。

http://w3school.com.cn/php/php_get.asp

参考资料:http://w3school.com.cn/php/php_get.asp

php获取url参数
1、在当前网页echo出变量$_SERVER['HTTP_HOST']即可获取域名或主机地址。2、在当前网页echo出变量$_SERVER['PHP_SELF']即可获取网页地址。3、在当前网页echo出变量$_SERVER["QUERY_STRING"]即可获取网址参数。4、在当前网页echo出变量$_SERVER['HTTP_REFERER']即可获取用户代理。5、在当前网页echo出...

url-thinkphp如何获取链接参数求大神支招
针对需要获取链接参数的问题,如需从"http:\/\/.\/url\/http:\/\/www.baidu.com"中获取到完整的URL "http:\/\/www.baidu.com",可以采取以下步骤。使用$_GET['url'] 或者 $url=I('request.url') 获取URL参数,注意此时获取的仅为"http"。为获取完整URL,可直接在链接后添加?url=urlencode("http:\/...

php获取url参数
1、在当前网页echo出变量$_SERVER['HTTP_HOST']即可获取域名或主机地址。2、在当前网页echo出变量$_SERVER['PHP_SELF']即可获取网页地址。3、在当前网页echo出变量$_SERVER["QUERY_STRING"]即可获取网址参数。4、在当前网页echo出变量$_SERVER['HTTP_REFERER']即可获取用户代理。5、在当前网页echo出...

php如何获取网址中的参数
http:\/\/域名\/goods.php?u=59&id=24#pinglun 我想得到这个id值 可以用正则,也可以用php函数解析到数组中 用正则可以这样 preg_match('\/id=(\\d+)\/',$_SERVER["REQUEST_URI"],$m);\/\/$_SERVER 这个表示当前网址url print_r($m[1]);exit;或者用parse_url()及parse_str()函数 cur_q=pa...

php编程中怎么实现get和post请求的方法?
在PHP编程中,实现GET和POST请求的方法主要通过超全局变量$_GET和$_POST。针对GET请求,使用$_GET超全局变量可获取URL中的参数。例如,URL为"http:\/\/example.com\/test.php?id=123&name=john",通过$_GET可以获取id和name的值。对于POST请求,利用$_POST超全局变量获取表单提交的数据。若表单包含名...

php获取网址参数,并在结果页引用部分网址参数。
使用$_GET['action']=value action是你要获取的对象内容,value是你要的值。上一页下一页的链接可以使用 href="page.php?pageId=val"里面的id是你取到的值运算后的结果,每次点上一页(下一页)的时候通过url传值,然后$_GET获得当前url的值,进入运算并取出数据库中对应的id字段的值(sql语句...

thinkphp 取得url参数
一般情况下URL中的参数就是通过GET方法获取,但是由于PATHINFO的特殊性,URL地址最终需要被解析才能转换成GET参数,ThinkPHP对URL是按照一定的规则进行解析的,除非你使用了URL路由规则,如果你对URL做了特别的定制,但是又不想使用URL路由,那么可以使用框架提供的URL参数获取方法直接获取,例如,我们访问一个...

urlPHPURL地址获取函数代码端口等推荐
获取网址参数:`echo $_SERVER["QUERY_STRING"]."";`获取来源网页的详细地址:`echo $_SERVER['HTTP_REFERER']."";`理解服务器变量`$_SERVER`对于在PHP中正确地处理URL和路径信息至关重要。这些变量提供了有关服务器配置、当前请求、客户端请求等的信息。例如,`$_SERVER['HTTP_HOST']`用于获取...

100分求PHP获取图中链接URL中的ID数字值。
对于 url ,可以使用 parse_url 函数来解析获取相应的部分,比如 host、path、query 等。按照你题目的要求,需要获取的是 query 部分,这部分又可以使用 parse_str 函数来解析,然后获取需要的参数,比如你这里的 id。这里有一个函数,用于获取一个链接的URL的query部分,并解析成数组,可以很方便的通过...

php 获取当前url中参数abc的值
url参数是用$_GET来获取 也可以通过printf的参数传过去,由于你这个是截图,printf太长了,通过参数传过去的写法就不给出了,就是用%占位,然后后面参数是$_GET['abc']

相似回答