php数组和网址URL参数的互相转换

前言

接口调试和开发的过程中,相信很多小伙伴都会经常用到数组和url参数的相互转换来模拟请求。其实不用自己再通过foreach或implode之类的手动实现,php自身的函数库给我们提供了两个方法,完全够用:

原文地址:https://www.ngxcode.com/archives/519.html

http_build_query

将数据转换为URL参数格式,返回一个 URL 编码后的字符串。

示例

$arr = [
	'name' 		=> 'ngxcode',
	'url'		=> 'https://www.ngxcode.com',
	'flowid'	=> '1001035',
	'desc'		=> 'php share'
];

echo http_build_query($arr) . "\n";
echo http_build_query($arr, '', '&');

输出:

name=ngxcode&url=https%3A%2F%2Fwww.ngxcode.com&flowid=1001035&desc=php+share
name=ngxcode&url=https%3A%2F%2Fwww.ngxcode.com&flowid=1001035&desc=php+share

parse_str

URL参数字符串转为数组,将字符串解析成多个变量

示例

$url_params = 'name=ngxcode&url=https%3A%2F%2Fwww.ngxcode.com&flowid=1001035&desc=php+share';
//如果设置了第二个变量 result,变量将会以数组元素的形式存入到这个数组,作为替代。
parse_str($url_params, $result);

print_r($result);

输出

Array
(
   [name] => ngxcode
   [url] => https://www.ngxcode.com
   [flowid] => 1001035
   [desc] => php share
)

PHP官方文档

以下为两个函数的官方文档介绍,需要更复杂转换和解析需求的,可查看文档使用
https://www.php.net/manual/zh/function.http-build-query.php
https://www.php.net/manual/zh/function.parse-str.php

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangnbx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值