全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

php使用parse_str实现查询字符串解析到变量中的方法

本文实例讲述了php使用parse_str实现查询字符串解析到变量中的方法。分享给大家供大家参考,具体如下:

parse_str()函数可实现把字符串解析到变量中,这意味着实现了字符串与变量之间的一种转换机制,在与客户端数据传递的过程中,数据是通过字符串的形式传递,如GET请求,然后在服务器端通过$_GET/$_POST等全局变量实现字符串与变量的转换,如:https://www./?index.php?var1=1&var2=2,请求后服务端可使用$_GET['var1']的方式获取var1=1&var2=2这一段字符串转换成变量。parse_str()函数可实现用样的功能,使用parse_str()函数解析$_SERVER['QUERY_STRING']的值,就可以直接实现字符串与变量的转换,如$var1。

一、函数原型

void parse_str ( string str [, array &arr] )

二、版本兼容

PHP 3, PHP 4, PHP 5

三、函数基础用法与实例

1. 解析字符串为变量

<?php
parse_str("var1=jb51&var2=parse_str");
echo $var1.$var2;
?>

2. 解析字符串并将变量存储到数组中

<?php
parse_str("var1=jb51&var2=parse_str",$array);
print_r($array);
?>

输出:

Array ( [var1] => jb51 [var2] => parse_str )

说明:这种将变量存储到数组中在PHP 4.0.3 才增加

3. 解析的字符串有空格

<?php
parse_str("v ar1=jb51&var 2=parse_str",$array);
print_r($array);
?>

输出:

Array ( [v_ar1] => jb51 [var_2] => parse_str )

说明:直接将空格转换为下划线_

四、注意事项

1. 如果未设置 array 参数,由该函数设置的变量将覆盖已由同名变量。

2. php.ini 中的 magic_quotes_gpc 设置影响该函数的输出。如果已启用,那么在 parse_str() 解析之前,变量会被 addslashes() 转换。

3. parse_str() 函数在处理参数时存在漏洞,攻击者可以利用这个漏洞启用register_globals,从而进一步利用其他PHP脚本中的漏洞。如果仅以一个参数调用 parse_str()的话,该函数会认为该参数是通过URL传送的请求字符串那样解析所提供的字符串,但外部攻击者可以在调用 parse_str()期间发送很多请求变量来触发memory_limit请求终止。如果在调用parse_str()期间执行了请求关闭的话,则在相关webserver进程的其余生命周期期间register_globals标签会一直打开。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php排序算法总结》、《PHP常用遍历算法与技巧总结》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# php  # parse_str  # 查询  # 字符串  # 解析  # 变量  # PHP正在进行时-变量详解及字符串动态插入变量  # php解析http获取的json字符串变量总是空白null  # php 变量定义方法  # php中static静态变量的使用方法详解  # php判断变量类型常用方法  # PHP中session变量的销毁  # PHP 判断常量  # 变量和函数是否存在  # PHP 变量类型的强制转换  # 解析在PHP中使用全局变量的几种方法  # PHP中使用unset销毁变量并内存释放问题  # php 字符串中是否包含指定字符串的多种方法  # php变量与字符串的增删改查操作示例  # 程序设计  # 组中  # 操作技巧  # 相关内容  # 遍历  # 下划线  # 感兴趣  # 数据结构  # 给大家  # 并将  # 所提供  # 在与  # 则在  # 转换成  # 更多关于  # 转换为  # 可以利用  # 所述  # 服务端  # 已由 


相关文章: 如何正确下载安装西数主机建站助手?  如何快速生成高效建站系统源代码?  建站之星如何配置系统实现高效建站?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  如何选择高效稳定的ISP建站解决方案?  如何通过服务器快速搭建网站?完整步骤解析  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  网站代码制作软件有哪些,如何生成自己网站的代码?  宝塔新建站点为何无法访问?如何排查?  建站之星安装失败:服务器环境不兼容?  已有域名和空间如何快速搭建网站?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  定制建站如何定义?其核心优势是什么?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  如何在IIS中新建站点并配置端口与IP地址?  如何快速完成中国万网建站详细流程?  c# 在高并发场景下,委托和接口调用的性能对比  建站之星Pro快速搭建教程:模板选择与功能配置指南  如何在云虚拟主机上快速搭建个人网站?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  完全自定义免费建站平台:主题模板在线生成一站式服务  图册素材网站设计制作软件,图册的导出方式有几种?  制作网站的模板软件,网站怎么建设?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  建站之星在线版空间:自助建站+智能模板一键生成方案  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  建站之星3.0如何解决常见操作问题?  如何选购建站域名与空间?自助平台全解析  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  专业公司网站制作公司,用什么语言做企业网站比较好?  如何生成腾讯云建站专用兑换码?  营销式网站制作方案,销售哪个网站招聘效果最好?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何通过老薛主机一键快速建站?  网站制作公司排行榜,抖音怎样做个人官方网站  大连 网站制作,大连天途有线官网?  建站主机类型有哪些?如何正确选型  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  如何通过虚拟主机空间快速建站?  高端建站如何打造兼具美学与转化的品牌官网?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  盐城做公司网站,江苏电子版退休证办理流程?  c# await 一个已经完成的Task会发生什么  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  高性能网站服务器配置指南:安全稳定与高效建站核心方案 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。