php如何获取网址中的参数

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

有多少种方法?
展开
 我来答
郁闷的前锋
2018-09-08 · TA获得超过7684个赞
知道答主
回答量:29
采纳率:0%
帮助的人:8617
展开全部

比如有一个网址为

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

泪reni
2018-07-19 · TA获得超过2485个赞
知道答主
回答量:15
采纳率:0%
帮助的人:1779
展开全部

有三种方法

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);

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
啦哈嘿呦c7
2015-12-26 · TA获得超过4687个赞
知道大有可为答主
回答量:2398
采纳率:70%
帮助的人:439万
展开全部
全面获取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 认证功能,这个变量便是认证的类型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
21高旭
2010-03-08 · TA获得超过914个赞
知道小有建树答主
回答量:632
采纳率:50%
帮助的人:502万
展开全部
用$_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[]方法。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
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

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式