热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHPURL处理的三个函数详解

本文详细介绍了PHP中与URL处理相关的三个函数:http_build_query、parse_str和查询字符串的解析。通过示例和语法说明,讲解了这些函数的使用方法和作用,帮助读者更好地理解和应用。

摘要:1. http_build_query函数说明:使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。例子:$dat...

1. http_build_query函数

说明:使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。

例子:

$data = array('name'=>'zhangsan',

'age'=>'22',

'sex'=>'男',

'height'=>'175');

echo http_build_query($data);

//结果:name=zhangsan&age=22&sex=男&height=175

2. parse_str函数

说明:把查询字符串解析到变量中

语法:parse_str(string,array)

@string必需。规定要解析的字符串。

@array可选。规定存储变量的数组的名称。该参数指示变量将被存储到数组中。

例子1:

$str = 'name=zhangsan&age=22&sex=男&height=175';

parse_str($str);

echo $name."
";

echo $age;

//结果:zhangsan 22

例子2:$str = 'name=zhangsan&age=22&sex=男&height=175';

parse_str($str, $arr);

var_dump($arr);

//结果:

array (size=4)

'name' => string 'zhangsan' (length=8)

'age' => string '22' (length=2)

'sex' => string '男' (length=3)

'height' => string '175' (length=3)

//个人总结:parse_str()是http_build_query()反向的函数

3. parse_url函数

说明:本函数将 URL 字符串予以解析,并将结果返回数组中。

返回的数组包括了下列元素:scheme、host、port、user、pass、path、query 与 fragment 等。

语法: array parse_url(string);

例子:

$str = 'https://www.yzmcms.com/index.php?m=content&c=index&a=lists&catid=18&catid=1';

$res = parse_url($str);

var_dump($res);

//结果:

array (size=4)

'scheme' => string 'http' (length=4)

'host' => string 'www.yzmcms.com' (length=14)

'path' => string '/index.php' (length=10)

'query' => string 'm=content&c=index&a=lists&catid=18&catid=1' (length=42)



推荐阅读
  • JSP 从入门到精通
    .body{textalign:center;}什么是URIURLURN?URI全称统一资源标识符,现在有两个方案,就是URL和URN.URL统一资源定位符,通常由scheme,d ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Swagger2非全局、无需重复输入的Head参数(Token)配置网络上关于Swagger2的教程多如牛毛,作为关于Swagger加入全 ... [详细]
  • laravel 使用腾讯云 COS5全教程
    laravel使用腾讯云COS5全教程一下载首先第一步肯定是用composer把包安装下来,这里是laravel5.8版本的,所以我用的是cos5 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • Request对象和Response对象request:(请求)当一个页面被请求时,Django就会创建一个包含本次请求原信息的HttpRequest对象。Djang ... [详细]
  • iOS开发Debug和Release的理解
    2019独角兽企业重金招聘Python工程师标准参考:http:blog.csdn.netmad1989articledetails406580331&# ... [详细]
author-avatar
ld无痕的心迹
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有